Pass gl::Context to impl methods instead of ContextImpl.
In some cases we might have to call back into the GL layer, passing
the Context, and if we just have a ContextImpl pointer this isn't
possible. It also removes the need for SafeGetImpl.
BUG=angleproject:2044
Change-Id: I6363e84b25648c992c25779d4c43f795aa2866d6
Reviewed-on: https://chromium-review.googlesource.com/516835
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
diff --git a/src/libANGLE/Buffer.cpp b/src/libANGLE/Buffer.cpp
index 5e6412f..77b9ff9 100644
--- a/src/libANGLE/Buffer.cpp
+++ b/src/libANGLE/Buffer.cpp
@@ -48,7 +48,7 @@
{
// In tests, mImpl might be null.
if (mImpl)
- mImpl->destroy(rx::SafeGetImpl(context));
+ mImpl->destroy(context);
}
void Buffer::setLabel(const std::string &label)
@@ -80,7 +80,7 @@
dataForImpl = scratchBuffer->data();
}
- ANGLE_TRY(mImpl->setData(rx::SafeGetImpl(context), target, dataForImpl, size, usage));
+ ANGLE_TRY(mImpl->setData(context, target, dataForImpl, size, usage));
mIndexRangeCache.clear();
mState.mUsage = usage;
@@ -95,7 +95,7 @@
GLsizeiptr size,
GLintptr offset)
{
- ANGLE_TRY(mImpl->setSubData(rx::SafeGetImpl(context), target, data, size, offset));
+ ANGLE_TRY(mImpl->setSubData(context, target, data, size, offset));
mIndexRangeCache.invalidateRange(static_cast<unsigned int>(offset), static_cast<unsigned int>(size));
@@ -108,8 +108,8 @@
GLintptr destOffset,
GLsizeiptr size)
{
- ANGLE_TRY(mImpl->copySubData(rx::SafeGetImpl(context), source->getImplementation(),
- sourceOffset, destOffset, size));
+ ANGLE_TRY(
+ mImpl->copySubData(context, source->getImplementation(), sourceOffset, destOffset, size));
mIndexRangeCache.invalidateRange(static_cast<unsigned int>(destOffset), static_cast<unsigned int>(size));
@@ -121,7 +121,7 @@
ASSERT(!mState.mMapped);
mState.mMapPointer = nullptr;
- ANGLE_TRY(mImpl->map(rx::SafeGetImpl(context), access, &mState.mMapPointer));
+ ANGLE_TRY(mImpl->map(context, access, &mState.mMapPointer));
ASSERT(access == GL_WRITE_ONLY_OES);
@@ -144,8 +144,7 @@
ASSERT(offset + length <= mState.mSize);
mState.mMapPointer = nullptr;
- ANGLE_TRY(
- mImpl->mapRange(rx::SafeGetImpl(context), offset, length, access, &mState.mMapPointer));
+ ANGLE_TRY(mImpl->mapRange(context, offset, length, access, &mState.mMapPointer));
mState.mMapped = GL_TRUE;
mState.mMapOffset = static_cast<GLint64>(offset);
@@ -171,7 +170,7 @@
ASSERT(mState.mMapped);
*result = GL_FALSE;
- ANGLE_TRY(mImpl->unmap(rx::SafeGetImpl(context), result));
+ ANGLE_TRY(mImpl->unmap(context, result));
mState.mMapped = GL_FALSE;
mState.mMapPointer = nullptr;
diff --git a/src/libANGLE/Context.cpp b/src/libANGLE/Context.cpp
index 8213f3d..3e434b4 100644
--- a/src/libANGLE/Context.cpp
+++ b/src/libANGLE/Context.cpp
@@ -1821,7 +1821,7 @@
void Context::drawArrays(GLenum mode, GLint first, GLsizei count)
{
syncRendererState();
- auto error = mImplementation->drawArrays(mode, first, count);
+ auto error = mImplementation->drawArrays(this, mode, first, count);
handleError(error);
if (!error.isError())
{
@@ -1832,7 +1832,7 @@
void Context::drawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instanceCount)
{
syncRendererState();
- auto error = mImplementation->drawArraysInstanced(mode, first, count, instanceCount);
+ auto error = mImplementation->drawArraysInstanced(this, mode, first, count, instanceCount);
handleError(error);
if (!error.isError())
{
@@ -1844,7 +1844,7 @@
{
syncRendererState();
const IndexRange &indexRange = getParams<HasIndexRange>().getIndexRange().value();
- handleError(mImplementation->drawElements(mode, count, type, indices, indexRange));
+ handleError(mImplementation->drawElements(this, mode, count, type, indices, indexRange));
}
void Context::drawElementsInstanced(GLenum mode,
@@ -1855,8 +1855,8 @@
{
syncRendererState();
const IndexRange &indexRange = getParams<HasIndexRange>().getIndexRange().value();
- handleError(
- mImplementation->drawElementsInstanced(mode, count, type, indices, instances, indexRange));
+ handleError(mImplementation->drawElementsInstanced(this, mode, count, type, indices, instances,
+ indexRange));
}
void Context::drawRangeElements(GLenum mode,
@@ -1868,20 +1868,20 @@
{
syncRendererState();
const IndexRange &indexRange = getParams<HasIndexRange>().getIndexRange().value();
- handleError(
- mImplementation->drawRangeElements(mode, start, end, count, type, indices, indexRange));
+ handleError(mImplementation->drawRangeElements(this, mode, start, end, count, type, indices,
+ indexRange));
}
void Context::drawArraysIndirect(GLenum mode, const void *indirect)
{
syncRendererState();
- handleError(mImplementation->drawArraysIndirect(mode, indirect));
+ handleError(mImplementation->drawArraysIndirect(this, mode, indirect));
}
void Context::drawElementsIndirect(GLenum mode, GLenum type, const void *indirect)
{
syncRendererState();
- handleError(mImplementation->drawElementsIndirect(mode, type, indirect));
+ handleError(mImplementation->drawElementsIndirect(this, mode, type, indirect));
}
void Context::flush()
@@ -2782,34 +2782,31 @@
syncStateForBlit();
- handleError(drawFramebuffer->blit(mImplementation.get(), srcArea, dstArea, mask, filter));
+ handleError(drawFramebuffer->blit(this, srcArea, dstArea, mask, filter));
}
void Context::clear(GLbitfield mask)
{
syncStateForClear();
- handleError(mGLState.getDrawFramebuffer()->clear(mImplementation.get(), mask));
+ handleError(mGLState.getDrawFramebuffer()->clear(this, mask));
}
void Context::clearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *values)
{
syncStateForClear();
- handleError(mGLState.getDrawFramebuffer()->clearBufferfv(mImplementation.get(), buffer,
- drawbuffer, values));
+ handleError(mGLState.getDrawFramebuffer()->clearBufferfv(this, buffer, drawbuffer, values));
}
void Context::clearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *values)
{
syncStateForClear();
- handleError(mGLState.getDrawFramebuffer()->clearBufferuiv(mImplementation.get(), buffer,
- drawbuffer, values));
+ handleError(mGLState.getDrawFramebuffer()->clearBufferuiv(this, buffer, drawbuffer, values));
}
void Context::clearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *values)
{
syncStateForClear();
- handleError(mGLState.getDrawFramebuffer()->clearBufferiv(mImplementation.get(), buffer,
- drawbuffer, values));
+ handleError(mGLState.getDrawFramebuffer()->clearBufferiv(this, buffer, drawbuffer, values));
}
void Context::clearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
@@ -2825,8 +2822,7 @@
}
syncStateForClear();
- handleError(framebufferObject->clearBufferfi(mImplementation.get(), buffer, drawbuffer, depth,
- stencil));
+ handleError(framebufferObject->clearBufferfi(this, buffer, drawbuffer, depth, stencil));
}
void Context::readPixels(GLint x,
@@ -2848,7 +2844,7 @@
ASSERT(framebufferObject);
Rectangle area(x, y, width, height);
- handleError(framebufferObject->readPixels(mImplementation.get(), area, format, type, pixels));
+ handleError(framebufferObject->readPixels(this, area, format, type, pixels));
}
void Context::copyTexImage2D(GLenum target,
diff --git a/src/libANGLE/Framebuffer.cpp b/src/libANGLE/Framebuffer.cpp
index 38eae38..a2aac1d 100644
--- a/src/libANGLE/Framebuffer.cpp
+++ b/src/libANGLE/Framebuffer.cpp
@@ -480,12 +480,12 @@
void Framebuffer::destroy(const Context *context)
{
- mImpl->destroy(rx::SafeGetImpl(context));
+ mImpl->destroy(context);
}
void Framebuffer::destroyDefault(const egl::Display *display)
{
- mImpl->destroyDefault(rx::SafeGetImpl(display));
+ mImpl->destroyDefault(display);
}
void Framebuffer::setLabel(const std::string &label)
@@ -934,7 +934,7 @@
return mImpl->invalidateSub(count, attachments, area);
}
-Error Framebuffer::clear(rx::ContextImpl *context, GLbitfield mask)
+Error Framebuffer::clear(const gl::Context *context, GLbitfield mask)
{
if (context->getGLState().isRasterizerDiscardEnabled())
{
@@ -944,7 +944,7 @@
return mImpl->clear(context, mask);
}
-Error Framebuffer::clearBufferfv(rx::ContextImpl *context,
+Error Framebuffer::clearBufferfv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLfloat *values)
@@ -957,7 +957,7 @@
return mImpl->clearBufferfv(context, buffer, drawbuffer, values);
}
-Error Framebuffer::clearBufferuiv(rx::ContextImpl *context,
+Error Framebuffer::clearBufferuiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLuint *values)
@@ -970,7 +970,7 @@
return mImpl->clearBufferuiv(context, buffer, drawbuffer, values);
}
-Error Framebuffer::clearBufferiv(rx::ContextImpl *context,
+Error Framebuffer::clearBufferiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLint *values)
@@ -983,7 +983,7 @@
return mImpl->clearBufferiv(context, buffer, drawbuffer, values);
}
-Error Framebuffer::clearBufferfi(rx::ContextImpl *context,
+Error Framebuffer::clearBufferfi(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
GLfloat depth,
@@ -1007,7 +1007,7 @@
return mImpl->getImplementationColorReadType();
}
-Error Framebuffer::readPixels(rx::ContextImpl *context,
+Error Framebuffer::readPixels(const gl::Context *context,
const Rectangle &area,
GLenum format,
GLenum type,
@@ -1024,7 +1024,7 @@
return NoError();
}
-Error Framebuffer::blit(rx::ContextImpl *context,
+Error Framebuffer::blit(const gl::Context *context,
const Rectangle &sourceArea,
const Rectangle &destArea,
GLbitfield mask,
@@ -1272,7 +1272,7 @@
{
if (mDirtyBits.any())
{
- mImpl->syncState(rx::SafeGetImpl(context), mDirtyBits);
+ mImpl->syncState(context, mDirtyBits);
mDirtyBits.reset();
if (mId != 0)
{
diff --git a/src/libANGLE/Framebuffer.h b/src/libANGLE/Framebuffer.h
index 516c98f..e4fcc26 100644
--- a/src/libANGLE/Framebuffer.h
+++ b/src/libANGLE/Framebuffer.h
@@ -23,7 +23,6 @@
namespace rx
{
-class ContextImpl;
class GLImplFactory;
class FramebufferImpl;
class RenderbufferImpl;
@@ -211,20 +210,20 @@
Error invalidate(size_t count, const GLenum *attachments);
Error invalidateSub(size_t count, const GLenum *attachments, const gl::Rectangle &area);
- Error clear(rx::ContextImpl *context, GLbitfield mask);
- Error clearBufferfv(rx::ContextImpl *context,
+ Error clear(const gl::Context *context, GLbitfield mask);
+ Error clearBufferfv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLfloat *values);
- Error clearBufferuiv(rx::ContextImpl *context,
+ Error clearBufferuiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLuint *values);
- Error clearBufferiv(rx::ContextImpl *context,
+ Error clearBufferiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLint *values);
- Error clearBufferfi(rx::ContextImpl *context,
+ Error clearBufferfi(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
GLfloat depth,
@@ -232,13 +231,13 @@
GLenum getImplementationColorReadFormat() const;
GLenum getImplementationColorReadType() const;
- Error readPixels(rx::ContextImpl *context,
+ Error readPixels(const gl::Context *context,
const gl::Rectangle &area,
GLenum format,
GLenum type,
void *pixels) const;
- Error blit(rx::ContextImpl *context,
+ Error blit(const gl::Context *context,
const Rectangle &sourceArea,
const Rectangle &destArea,
GLbitfield mask,
diff --git a/src/libANGLE/Program.cpp b/src/libANGLE/Program.cpp
index 95d2763..d12c5ae 100644
--- a/src/libANGLE/Program.cpp
+++ b/src/libANGLE/Program.cpp
@@ -447,7 +447,7 @@
mState.mAttachedComputeShader = nullptr;
}
- mProgram->destroy(rx::SafeGetImpl(context));
+ mProgram->destroy(context);
}
void Program::setLabel(const std::string &label)
@@ -672,8 +672,7 @@
}
gl::VaryingPacking noPacking(0, PackMode::ANGLE_RELAXED);
- ANGLE_TRY_RESULT(mProgram->link(context->getImplementation(), noPacking, mInfoLog),
- mLinked);
+ ANGLE_TRY_RESULT(mProgram->link(context, noPacking, mInfoLog), mLinked);
if (!mLinked)
{
return NoError();
@@ -742,8 +741,7 @@
return NoError();
}
- ANGLE_TRY_RESULT(mProgram->link(context->getImplementation(), varyingPacking, mInfoLog),
- mLinked);
+ ANGLE_TRY_RESULT(mProgram->link(context, varyingPacking, mInfoLog), mLinked);
if (!mLinked)
{
return NoError();
@@ -957,7 +955,7 @@
mState.mSamplerBindings.emplace_back(SamplerBinding(textureType, bindingCount));
}
- ANGLE_TRY_RESULT(mProgram->load(context->getImplementation(), mInfoLog, &stream), mLinked);
+ ANGLE_TRY_RESULT(mProgram->load(context, mInfoLog, &stream), mLinked);
return NoError();
#endif // #if ANGLE_PROGRAM_BINARY_LOAD == ANGLE_ENABLED
diff --git a/src/libANGLE/Surface.cpp b/src/libANGLE/Surface.cpp
index 231dab6..0db540e 100644
--- a/src/libANGLE/Surface.cpp
+++ b/src/libANGLE/Surface.cpp
@@ -97,14 +97,14 @@
}
if (mImplementation)
{
- mImplementation->destroy(rx::SafeGetImpl(display));
+ mImplementation->destroy(display);
}
delete this;
}
Error Surface::initialize(const Display &display)
{
- ANGLE_TRY(mImplementation->initialize(display.getImplementation()));
+ ANGLE_TRY(mImplementation->initialize(&display));
// Initialized here since impl is nullptr in the constructor.
// Must happen after implementation initialize for Android.
@@ -149,7 +149,7 @@
Error Surface::swap(const Display &display)
{
- return mImplementation->swap(display.getImplementation());
+ return mImplementation->swap(&display);
}
Error Surface::swapWithDamage(EGLint *rects, EGLint n_rects)
diff --git a/src/libANGLE/Surface_unittest.cpp b/src/libANGLE/Surface_unittest.cpp
index 022be38..ca04f4f 100644
--- a/src/libANGLE/Surface_unittest.cpp
+++ b/src/libANGLE/Surface_unittest.cpp
@@ -28,10 +28,10 @@
MockSurfaceImpl() : SurfaceImpl(mockState), mockState(nullptr) {}
virtual ~MockSurfaceImpl() { destructor(); }
- MOCK_METHOD1(destroy, void(const DisplayImpl *));
- MOCK_METHOD1(initialize, egl::Error(const DisplayImpl *));
+ MOCK_METHOD1(destroy, void(const egl::Display *));
+ MOCK_METHOD1(initialize, egl::Error(const egl::Display *));
MOCK_METHOD1(createDefaultFramebuffer, rx::FramebufferImpl *(const gl::FramebufferState &data));
- MOCK_METHOD1(swap, egl::Error(const DisplayImpl *));
+ MOCK_METHOD1(swap, egl::Error(const egl::Display *));
MOCK_METHOD2(swapWithDamage, egl::Error(EGLint *, EGLint));
MOCK_METHOD4(postSubBuffer, egl::Error(EGLint, EGLint, EGLint, EGLint));
MOCK_METHOD2(querySurfacePointerANGLE, egl::Error(EGLint, void**));
diff --git a/src/libANGLE/Texture.cpp b/src/libANGLE/Texture.cpp
index 4186aee..e4b7203 100644
--- a/src/libANGLE/Texture.cpp
+++ b/src/libANGLE/Texture.cpp
@@ -882,8 +882,8 @@
releaseTexImageInternal();
orphanImages();
- ANGLE_TRY(mTexture->setImage(rx::SafeGetImpl(context), target, level, internalFormat, size,
- format, type, unpackState, pixels));
+ ANGLE_TRY(mTexture->setImage(context, target, level, internalFormat, size, format, type,
+ unpackState, pixels));
mState.setImageDesc(target, level, ImageDesc(size, Format(internalFormat, type)));
mDirtyChannel.signal();
@@ -902,8 +902,7 @@
{
ASSERT(target == mState.mTarget ||
(mState.mTarget == GL_TEXTURE_CUBE_MAP && IsCubeMapTextureTarget(target)));
- return mTexture->setSubImage(rx::SafeGetImpl(context), target, level, area, format, type,
- unpackState, pixels);
+ return mTexture->setSubImage(context, target, level, area, format, type, unpackState, pixels);
}
Error Texture::setCompressedImage(const Context *context,
@@ -922,8 +921,8 @@
releaseTexImageInternal();
orphanImages();
- ANGLE_TRY(mTexture->setCompressedImage(rx::SafeGetImpl(context), target, level, internalFormat,
- size, unpackState, imageSize, pixels));
+ ANGLE_TRY(mTexture->setCompressedImage(context, target, level, internalFormat, size,
+ unpackState, imageSize, pixels));
mState.setImageDesc(target, level, ImageDesc(size, Format(internalFormat)));
mDirtyChannel.signal();
@@ -943,8 +942,8 @@
ASSERT(target == mState.mTarget ||
(mState.mTarget == GL_TEXTURE_CUBE_MAP && IsCubeMapTextureTarget(target)));
- return mTexture->setCompressedSubImage(rx::SafeGetImpl(context), target, level, area, format,
- unpackState, imageSize, pixels);
+ return mTexture->setCompressedSubImage(context, target, level, area, format, unpackState,
+ imageSize, pixels);
}
Error Texture::copyImage(const Context *context,
@@ -961,8 +960,7 @@
releaseTexImageInternal();
orphanImages();
- ANGLE_TRY(mTexture->copyImage(rx::SafeGetImpl(context), target, level, sourceArea,
- internalFormat, source));
+ ANGLE_TRY(mTexture->copyImage(context, target, level, sourceArea, internalFormat, source));
const InternalFormat &internalFormatInfo =
GetInternalFormatInfo(internalFormat, GL_UNSIGNED_BYTE);
@@ -983,8 +981,7 @@
ASSERT(target == mState.mTarget ||
(mState.mTarget == GL_TEXTURE_CUBE_MAP && IsCubeMapTextureTarget(target)));
- return mTexture->copySubImage(rx::SafeGetImpl(context), target, level, destOffset, sourceArea,
- source);
+ return mTexture->copySubImage(context, target, level, destOffset, sourceArea, source);
}
Error Texture::copyTexture(const Context *context,
@@ -1005,9 +1002,9 @@
releaseTexImageInternal();
orphanImages();
- ANGLE_TRY(mTexture->copyTexture(rx::SafeGetImpl(context), target, level, internalFormat, type,
- sourceLevel, unpackFlipY, unpackPremultiplyAlpha,
- unpackUnmultiplyAlpha, source));
+ ANGLE_TRY(mTexture->copyTexture(context, target, level, internalFormat, type, sourceLevel,
+ unpackFlipY, unpackPremultiplyAlpha, unpackUnmultiplyAlpha,
+ source));
const auto &sourceDesc = source->mState.getImageDesc(source->getTarget(), 0);
const InternalFormat &internalFormatInfo = GetInternalFormatInfo(internalFormat, type);
@@ -1031,9 +1028,9 @@
ASSERT(target == mState.mTarget ||
(mState.mTarget == GL_TEXTURE_CUBE_MAP && IsCubeMapTextureTarget(target)));
- return mTexture->copySubTexture(rx::SafeGetImpl(context), target, level, destOffset,
- sourceLevel, sourceArea, unpackFlipY, unpackPremultiplyAlpha,
- unpackUnmultiplyAlpha, source);
+ return mTexture->copySubTexture(context, target, level, destOffset, sourceLevel, sourceArea,
+ unpackFlipY, unpackPremultiplyAlpha, unpackUnmultiplyAlpha,
+ source);
}
Error Texture::copyCompressedTexture(const Context *context, const Texture *source)
@@ -1042,7 +1039,7 @@
releaseTexImageInternal();
orphanImages();
- ANGLE_TRY(mTexture->copyCompressedTexture(rx::SafeGetImpl(context), source));
+ ANGLE_TRY(mTexture->copyCompressedTexture(context, source));
ASSERT(source->getTarget() != GL_TEXTURE_CUBE_MAP && getTarget() != GL_TEXTURE_CUBE_MAP);
const auto &sourceDesc = source->mState.getImageDesc(source->getTarget(), 0);
@@ -1063,7 +1060,7 @@
releaseTexImageInternal();
orphanImages();
- ANGLE_TRY(mTexture->setStorage(rx::SafeGetImpl(context), target, levels, internalFormat, size));
+ ANGLE_TRY(mTexture->setStorage(context, target, levels, internalFormat, size));
mState.mImmutableFormat = true;
mState.mImmutableLevels = static_cast<GLuint>(levels);
@@ -1095,8 +1092,8 @@
releaseTexImageInternal();
orphanImages();
- ANGLE_TRY(mTexture->setStorageMultisample(rx::SafeGetImpl(context), target, samples,
- internalFormat, size, fixedSampleLocations));
+ ANGLE_TRY(mTexture->setStorageMultisample(context, target, samples, internalFormat, size,
+ fixedSampleLocations));
mState.mImmutableFormat = true;
mState.mImmutableLevels = static_cast<GLuint>(1);
@@ -1127,7 +1124,7 @@
if (maxLevel > baseLevel)
{
syncImplState();
- ANGLE_TRY(mTexture->generateMipmap(rx::SafeGetImpl(context)));
+ ANGLE_TRY(mTexture->generateMipmap(context));
const ImageDesc &baseImageInfo =
mState.getImageDesc(mState.getBaseImageTarget(), baseLevel);
diff --git a/src/libANGLE/VertexArray.cpp b/src/libANGLE/VertexArray.cpp
index b19e6ea..00d2180 100644
--- a/src/libANGLE/VertexArray.cpp
+++ b/src/libANGLE/VertexArray.cpp
@@ -218,7 +218,7 @@
{
if (mDirtyBits.any())
{
- mVertexArray->syncState(rx::SafeGetImpl(context), mDirtyBits);
+ mVertexArray->syncState(context, mDirtyBits);
mDirtyBits.reset();
}
}
diff --git a/src/libANGLE/angletypes.h b/src/libANGLE/angletypes.h
index 3cb59d5..8842f7a 100644
--- a/src/libANGLE/angletypes.h
+++ b/src/libANGLE/angletypes.h
@@ -334,13 +334,6 @@
return src != nullptr ? GetAs<DestT>(src->getImplementation()) : nullptr;
}
-// In some cases we want to retrieve an Impl object, while handling nullptr cases trivially.
-template <typename ObjT>
-auto SafeGetImpl(ObjT *src) -> decltype(src->getImplementation())
-{
- return src ? src->getImplementation() : nullptr;
-}
-
} // namespace rx
#include "angletypes.inl"
diff --git a/src/libANGLE/renderer/BufferImpl.h b/src/libANGLE/renderer/BufferImpl.h
index 73afe37..5ca69ee 100644
--- a/src/libANGLE/renderer/BufferImpl.h
+++ b/src/libANGLE/renderer/BufferImpl.h
@@ -18,41 +18,40 @@
namespace gl
{
class BufferState;
+class Context;
}
namespace rx
{
-class ContextImpl;
-
class BufferImpl : angle::NonCopyable
{
public:
BufferImpl(const gl::BufferState &state) : mState(state) {}
virtual ~BufferImpl() {}
- virtual void destroy(ContextImpl *contextImpl) {}
+ virtual void destroy(const gl::Context *context) {}
- virtual gl::Error setData(ContextImpl *context,
+ virtual gl::Error setData(const gl::Context *context,
GLenum target,
const void *data,
size_t size,
GLenum usage) = 0;
- virtual gl::Error setSubData(ContextImpl *context,
+ virtual gl::Error setSubData(const gl::Context *context,
GLenum target,
const void *data,
size_t size,
size_t offset) = 0;
- virtual gl::Error copySubData(ContextImpl *contextImpl,
+ virtual gl::Error copySubData(const gl::Context *context,
BufferImpl *source,
GLintptr sourceOffset,
GLintptr destOffset,
GLsizeiptr size) = 0;
- virtual gl::Error map(ContextImpl *contextImpl, GLenum access, void **mapPtr) = 0;
- virtual gl::Error mapRange(ContextImpl *contextImpl,
+ virtual gl::Error map(const gl::Context *context, GLenum access, void **mapPtr) = 0;
+ virtual gl::Error mapRange(const gl::Context *context,
size_t offset,
size_t length,
GLbitfield access,
void **mapPtr) = 0;
- virtual gl::Error unmap(ContextImpl *contextImpl, GLboolean *result) = 0;
+ virtual gl::Error unmap(const gl::Context *context, GLboolean *result) = 0;
virtual gl::Error getIndexRange(GLenum type,
size_t offset,
diff --git a/src/libANGLE/renderer/BufferImpl_mock.h b/src/libANGLE/renderer/BufferImpl_mock.h
index 16a6c1f..68249e5 100644
--- a/src/libANGLE/renderer/BufferImpl_mock.h
+++ b/src/libANGLE/renderer/BufferImpl_mock.h
@@ -22,14 +22,15 @@
MockBufferImpl() : BufferImpl(mMockState) {}
~MockBufferImpl() { destructor(); }
- MOCK_METHOD5(setData, gl::Error(ContextImpl *, GLenum, const void *, size_t, GLenum));
- MOCK_METHOD5(setSubData, gl::Error(ContextImpl *, GLenum, const void *, size_t, size_t));
- MOCK_METHOD5(copySubData,
- gl::Error(ContextImpl *contextImpl, BufferImpl *, GLintptr, GLintptr, GLsizeiptr));
- MOCK_METHOD3(map, gl::Error(ContextImpl *contextImpl, GLenum, void **));
+ MOCK_METHOD5(setData, gl::Error(const gl::Context *, GLenum, const void *, size_t, GLenum));
+ MOCK_METHOD5(setSubData, gl::Error(const gl::Context *, GLenum, const void *, size_t, size_t));
+ MOCK_METHOD5(
+ copySubData,
+ gl::Error(const gl::Context *contextImpl, BufferImpl *, GLintptr, GLintptr, GLsizeiptr));
+ MOCK_METHOD3(map, gl::Error(const gl::Context *contextImpl, GLenum, void **));
MOCK_METHOD5(mapRange,
- gl::Error(ContextImpl *contextImpl, size_t, size_t, GLbitfield, void **));
- MOCK_METHOD2(unmap, gl::Error(ContextImpl *contextImpl, GLboolean *result));
+ gl::Error(const gl::Context *contextImpl, size_t, size_t, GLbitfield, void **));
+ MOCK_METHOD2(unmap, gl::Error(const gl::Context *contextImpl, GLboolean *result));
MOCK_METHOD5(getIndexRange, gl::Error(GLenum, size_t, size_t, bool, gl::IndexRange *));
diff --git a/src/libANGLE/renderer/ContextImpl.h b/src/libANGLE/renderer/ContextImpl.h
index b5f1be9..1597332 100644
--- a/src/libANGLE/renderer/ContextImpl.h
+++ b/src/libANGLE/renderer/ContextImpl.h
@@ -36,24 +36,31 @@
virtual gl::Error finish() = 0;
// Drawing methods.
- virtual gl::Error drawArrays(GLenum mode, GLint first, GLsizei count) = 0;
- virtual gl::Error drawArraysInstanced(GLenum mode,
+ virtual gl::Error drawArrays(const gl::Context *context,
+ GLenum mode,
+ GLint first,
+ GLsizei count) = 0;
+ virtual gl::Error drawArraysInstanced(const gl::Context *context,
+ GLenum mode,
GLint first,
GLsizei count,
GLsizei instanceCount) = 0;
- virtual gl::Error drawElements(GLenum mode,
+ virtual gl::Error drawElements(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
const gl::IndexRange &indexRange) = 0;
- virtual gl::Error drawElementsInstanced(GLenum mode,
+ virtual gl::Error drawElementsInstanced(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
GLsizei instances,
const gl::IndexRange &indexRange) = 0;
- virtual gl::Error drawRangeElements(GLenum mode,
+ virtual gl::Error drawRangeElements(const gl::Context *context,
+ GLenum mode,
GLuint start,
GLuint end,
GLsizei count,
@@ -61,8 +68,13 @@
const void *indices,
const gl::IndexRange &indexRange) = 0;
- virtual gl::Error drawArraysIndirect(GLenum mode, const void *indirect) = 0;
- virtual gl::Error drawElementsIndirect(GLenum mode, GLenum type, const void *indirect) = 0;
+ virtual gl::Error drawArraysIndirect(const gl::Context *context,
+ GLenum mode,
+ const void *indirect) = 0;
+ virtual gl::Error drawElementsIndirect(const gl::Context *context,
+ GLenum mode,
+ GLenum type,
+ const void *indirect) = 0;
// CHROMIUM_path_rendering path drawing methods.
virtual void stencilFillPath(const gl::Path *path, GLenum fillMode, GLuint mask);
diff --git a/src/libANGLE/renderer/FramebufferImpl.h b/src/libANGLE/renderer/FramebufferImpl.h
index b4438f8..c4871bd 100644
--- a/src/libANGLE/renderer/FramebufferImpl.h
+++ b/src/libANGLE/renderer/FramebufferImpl.h
@@ -31,8 +31,8 @@
public:
explicit FramebufferImpl(const gl::FramebufferState &state) : mState(state) {}
virtual ~FramebufferImpl() {}
- virtual void destroy(ContextImpl *contextImpl) {}
- virtual void destroyDefault(DisplayImpl *displayImpl) {}
+ virtual void destroy(const gl::Context *context) {}
+ virtual void destroyDefault(const egl::Display *display) {}
virtual gl::Error discard(size_t count, const GLenum *attachments) = 0;
virtual gl::Error invalidate(size_t count, const GLenum *attachments) = 0;
@@ -40,20 +40,20 @@
const GLenum *attachments,
const gl::Rectangle &area) = 0;
- virtual gl::Error clear(ContextImpl *context, GLbitfield mask) = 0;
- virtual gl::Error clearBufferfv(ContextImpl *context,
+ virtual gl::Error clear(const gl::Context *context, GLbitfield mask) = 0;
+ virtual gl::Error clearBufferfv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLfloat *values) = 0;
- virtual gl::Error clearBufferuiv(ContextImpl *context,
+ virtual gl::Error clearBufferuiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLuint *values) = 0;
- virtual gl::Error clearBufferiv(ContextImpl *context,
+ virtual gl::Error clearBufferiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLint *values) = 0;
- virtual gl::Error clearBufferfi(ContextImpl *context,
+ virtual gl::Error clearBufferfi(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
GLfloat depth,
@@ -61,13 +61,13 @@
virtual GLenum getImplementationColorReadFormat() const = 0;
virtual GLenum getImplementationColorReadType() const = 0;
- virtual gl::Error readPixels(ContextImpl *context,
+ virtual gl::Error readPixels(const gl::Context *context,
const gl::Rectangle &area,
GLenum format,
GLenum type,
void *pixels) const = 0;
- virtual gl::Error blit(ContextImpl *context,
+ virtual gl::Error blit(const gl::Context *context,
const gl::Rectangle &sourceArea,
const gl::Rectangle &destArea,
GLbitfield mask,
@@ -75,7 +75,7 @@
virtual bool checkStatus() const = 0;
- virtual void syncState(ContextImpl *contextImpl,
+ virtual void syncState(const gl::Context *context,
const gl::Framebuffer::DirtyBits &dirtyBits) = 0;
virtual gl::Error getSamplePosition(size_t index, GLfloat *xy) const = 0;
diff --git a/src/libANGLE/renderer/FramebufferImpl_mock.h b/src/libANGLE/renderer/FramebufferImpl_mock.h
index 401ddb4..a773bcf 100644
--- a/src/libANGLE/renderer/FramebufferImpl_mock.h
+++ b/src/libANGLE/renderer/FramebufferImpl_mock.h
@@ -27,26 +27,30 @@
MOCK_METHOD2(invalidate, gl::Error(size_t, const GLenum *));
MOCK_METHOD3(invalidateSub, gl::Error(size_t, const GLenum *, const gl::Rectangle &));
- MOCK_METHOD2(clear, gl::Error(ContextImpl *, GLbitfield));
- MOCK_METHOD4(clearBufferfv, gl::Error(ContextImpl *, GLenum, GLint, const GLfloat *));
- MOCK_METHOD4(clearBufferuiv, gl::Error(ContextImpl *, GLenum, GLint, const GLuint *));
- MOCK_METHOD4(clearBufferiv, gl::Error(ContextImpl *, GLenum, GLint, const GLint *));
- MOCK_METHOD5(clearBufferfi, gl::Error(ContextImpl *, GLenum, GLint, GLfloat, GLint));
+ MOCK_METHOD2(clear, gl::Error(const gl::Context *, GLbitfield));
+ MOCK_METHOD4(clearBufferfv, gl::Error(const gl::Context *, GLenum, GLint, const GLfloat *));
+ MOCK_METHOD4(clearBufferuiv, gl::Error(const gl::Context *, GLenum, GLint, const GLuint *));
+ MOCK_METHOD4(clearBufferiv, gl::Error(const gl::Context *, GLenum, GLint, const GLint *));
+ MOCK_METHOD5(clearBufferfi, gl::Error(const gl::Context *, GLenum, GLint, GLfloat, GLint));
MOCK_CONST_METHOD0(getImplementationColorReadFormat, GLenum());
MOCK_CONST_METHOD0(getImplementationColorReadType, GLenum());
- MOCK_CONST_METHOD5(readPixels,
- gl::Error(ContextImpl *, const gl::Rectangle &, GLenum, GLenum, void *));
+ MOCK_CONST_METHOD5(
+ readPixels,
+ gl::Error(const gl::Context *, const gl::Rectangle &, GLenum, GLenum, void *));
MOCK_CONST_METHOD2(getSamplePosition, gl::Error(size_t, GLfloat *));
- MOCK_METHOD5(
- blit,
- gl::Error(ContextImpl *, const gl::Rectangle &, const gl::Rectangle &, GLbitfield, GLenum));
+ MOCK_METHOD5(blit,
+ gl::Error(const gl::Context *,
+ const gl::Rectangle &,
+ const gl::Rectangle &,
+ GLbitfield,
+ GLenum));
MOCK_CONST_METHOD0(checkStatus, bool());
- MOCK_METHOD2(syncState, void(ContextImpl *, const gl::Framebuffer::DirtyBits &));
+ MOCK_METHOD2(syncState, void(const gl::Context *, const gl::Framebuffer::DirtyBits &));
MOCK_METHOD0(destructor, void());
};
diff --git a/src/libANGLE/renderer/ProgramImpl.h b/src/libANGLE/renderer/ProgramImpl.h
index 30a6a26..7111475 100644
--- a/src/libANGLE/renderer/ProgramImpl.h
+++ b/src/libANGLE/renderer/ProgramImpl.h
@@ -19,6 +19,7 @@
namespace gl
{
+class Context;
class VaryingPacking;
}
@@ -29,7 +30,6 @@
namespace rx
{
-class ContextImpl;
using LinkResult = gl::ErrorOrResult<bool>;
@@ -38,16 +38,16 @@
public:
ProgramImpl(const gl::ProgramState &state) : mState(state) {}
virtual ~ProgramImpl() {}
- virtual void destroy(const ContextImpl *contextImpl) {}
+ virtual void destroy(const gl::Context *context) {}
- virtual LinkResult load(const ContextImpl *contextImpl,
+ virtual LinkResult load(const gl::Context *context,
gl::InfoLog &infoLog,
gl::BinaryInputStream *stream) = 0;
virtual gl::Error save(gl::BinaryOutputStream *stream) = 0;
virtual void setBinaryRetrievableHint(bool retrievable) = 0;
virtual void setSeparable(bool separable) = 0;
- virtual LinkResult link(ContextImpl *contextImpl,
+ virtual LinkResult link(const gl::Context *context,
const gl::VaryingPacking &packing,
gl::InfoLog &infoLog) = 0;
virtual GLboolean validate(const gl::Caps &caps, gl::InfoLog *infoLog) = 0;
diff --git a/src/libANGLE/renderer/ProgramImpl_mock.h b/src/libANGLE/renderer/ProgramImpl_mock.h
index 9b830c0..a1f1501 100644
--- a/src/libANGLE/renderer/ProgramImpl_mock.h
+++ b/src/libANGLE/renderer/ProgramImpl_mock.h
@@ -23,12 +23,12 @@
MockProgramImpl() : ProgramImpl(gl::ProgramState()) {}
virtual ~MockProgramImpl() { destructor(); }
- MOCK_METHOD3(load, LinkResult(const ContextImpl *, gl::InfoLog &, gl::BinaryInputStream *));
+ MOCK_METHOD3(load, LinkResult(const gl::Context *, gl::InfoLog &, gl::BinaryInputStream *));
MOCK_METHOD1(save, gl::Error(gl::BinaryOutputStream *));
MOCK_METHOD1(setBinaryRetrievableHint, void(bool));
MOCK_METHOD1(setSeparable, void(bool));
- MOCK_METHOD3(link, LinkResult(ContextImpl *, const gl::VaryingPacking &, gl::InfoLog &));
+ MOCK_METHOD3(link, LinkResult(const gl::Context *, const gl::VaryingPacking &, gl::InfoLog &));
MOCK_METHOD2(validate, GLboolean(const gl::Caps &, gl::InfoLog *));
MOCK_METHOD3(setUniform1fv, void(GLint, GLsizei, const GLfloat *));
diff --git a/src/libANGLE/renderer/SurfaceImpl.h b/src/libANGLE/renderer/SurfaceImpl.h
index 0e4f177..6bfc74f 100644
--- a/src/libANGLE/renderer/SurfaceImpl.h
+++ b/src/libANGLE/renderer/SurfaceImpl.h
@@ -31,7 +31,6 @@
namespace rx
{
-class DisplayImpl;
class FramebufferImpl;
class SurfaceImpl : public FramebufferAttachmentObjectImpl
@@ -39,11 +38,11 @@
public:
SurfaceImpl(const egl::SurfaceState &surfaceState);
virtual ~SurfaceImpl();
- virtual void destroy(const DisplayImpl *displayImpl) {}
+ virtual void destroy(const egl::Display *display) {}
- virtual egl::Error initialize(const DisplayImpl *displayImpl) = 0;
+ virtual egl::Error initialize(const egl::Display *display) = 0;
virtual FramebufferImpl *createDefaultFramebuffer(const gl::FramebufferState &state) = 0;
- virtual egl::Error swap(const DisplayImpl *displayImpl) = 0;
+ virtual egl::Error swap(const egl::Display *display) = 0;
virtual egl::Error swapWithDamage(EGLint *rects, EGLint n_rects);
virtual egl::Error postSubBuffer(EGLint x, EGLint y, EGLint width, EGLint height) = 0;
virtual egl::Error querySurfacePointerANGLE(EGLint attribute, void **value) = 0;
diff --git a/src/libANGLE/renderer/TextureImpl.cpp b/src/libANGLE/renderer/TextureImpl.cpp
index 47a7390..9f637d7 100644
--- a/src/libANGLE/renderer/TextureImpl.cpp
+++ b/src/libANGLE/renderer/TextureImpl.cpp
@@ -19,7 +19,7 @@
{
}
-gl::Error TextureImpl::copyTexture(ContextImpl *contextImpl,
+gl::Error TextureImpl::copyTexture(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -34,7 +34,7 @@
return gl::Error(GL_INVALID_OPERATION, "CHROMIUM_copy_texture exposed but not implemented.");
}
-gl::Error TextureImpl::copySubTexture(ContextImpl *contextImpl,
+gl::Error TextureImpl::copySubTexture(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
@@ -49,7 +49,7 @@
return gl::Error(GL_INVALID_OPERATION, "CHROMIUM_copy_texture exposed but not implemented.");
}
-gl::Error TextureImpl::copyCompressedTexture(ContextImpl *contextImpl, const gl::Texture *source)
+gl::Error TextureImpl::copyCompressedTexture(const gl::Context *context, const gl::Texture *source)
{
UNREACHABLE();
return gl::Error(GL_INVALID_OPERATION,
diff --git a/src/libANGLE/renderer/TextureImpl.h b/src/libANGLE/renderer/TextureImpl.h
index 077485c..b814534 100644
--- a/src/libANGLE/renderer/TextureImpl.h
+++ b/src/libANGLE/renderer/TextureImpl.h
@@ -46,7 +46,7 @@
TextureImpl(const gl::TextureState &state);
virtual ~TextureImpl();
- virtual gl::Error setImage(ContextImpl *contextImpl,
+ virtual gl::Error setImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -55,7 +55,7 @@
GLenum type,
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) = 0;
- virtual gl::Error setSubImage(ContextImpl *contextImpl,
+ virtual gl::Error setSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -64,7 +64,7 @@
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) = 0;
- virtual gl::Error setCompressedImage(ContextImpl *contextImpl,
+ virtual gl::Error setCompressedImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -72,7 +72,7 @@
const gl::PixelUnpackState &unpack,
size_t imageSize,
const uint8_t *pixels) = 0;
- virtual gl::Error setCompressedSubImage(ContextImpl *contextImpl,
+ virtual gl::Error setCompressedSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -81,20 +81,20 @@
size_t imageSize,
const uint8_t *pixels) = 0;
- virtual gl::Error copyImage(ContextImpl *contextImpl,
+ virtual gl::Error copyImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Rectangle &sourceArea,
GLenum internalFormat,
const gl::Framebuffer *source) = 0;
- virtual gl::Error copySubImage(ContextImpl *contextImpl,
+ virtual gl::Error copySubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
const gl::Rectangle &sourceArea,
const gl::Framebuffer *source) = 0;
- virtual gl::Error copyTexture(ContextImpl *contextImpl,
+ virtual gl::Error copyTexture(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -104,7 +104,7 @@
bool unpackPremultiplyAlpha,
bool unpackUnmultiplyAlpha,
const gl::Texture *source);
- virtual gl::Error copySubTexture(ContextImpl *contextImpl,
+ virtual gl::Error copySubTexture(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
@@ -115,15 +115,15 @@
bool unpackUnmultiplyAlpha,
const gl::Texture *source);
- virtual gl::Error copyCompressedTexture(ContextImpl *contextImpl, const gl::Texture *source);
+ virtual gl::Error copyCompressedTexture(const gl::Context *context, const gl::Texture *source);
- virtual gl::Error setStorage(ContextImpl *contextImpl,
+ virtual gl::Error setStorage(const gl::Context *context,
GLenum target,
size_t levels,
GLenum internalFormat,
const gl::Extents &size) = 0;
- virtual gl::Error setStorageMultisample(ContextImpl *contextImpl,
+ virtual gl::Error setStorageMultisample(const gl::Context *context,
GLenum target,
GLsizei samples,
GLint internalformat,
@@ -136,7 +136,7 @@
egl::Stream *stream,
const egl::Stream::GLTextureDescription &desc) = 0;
- virtual gl::Error generateMipmap(ContextImpl *contextImpl) = 0;
+ virtual gl::Error generateMipmap(const gl::Context *context) = 0;
virtual void setBaseLevel(GLuint baseLevel) = 0;
diff --git a/src/libANGLE/renderer/TextureImpl_mock.h b/src/libANGLE/renderer/TextureImpl_mock.h
index 83a1d21..71de0c2 100644
--- a/src/libANGLE/renderer/TextureImpl_mock.h
+++ b/src/libANGLE/renderer/TextureImpl_mock.h
@@ -22,7 +22,7 @@
MockTextureImpl() : TextureImpl(mMockState), mMockState(GL_TEXTURE_2D) {}
virtual ~MockTextureImpl() { destructor(); }
MOCK_METHOD9(setImage,
- gl::Error(ContextImpl *,
+ gl::Error(const gl::Context *,
GLenum,
size_t,
GLenum,
@@ -32,7 +32,7 @@
const gl::PixelUnpackState &,
const uint8_t *));
MOCK_METHOD8(setSubImage,
- gl::Error(ContextImpl *,
+ gl::Error(const gl::Context *,
GLenum,
size_t,
const gl::Box &,
@@ -41,7 +41,7 @@
const gl::PixelUnpackState &,
const uint8_t *));
MOCK_METHOD8(setCompressedImage,
- gl::Error(ContextImpl *,
+ gl::Error(const gl::Context *,
GLenum,
size_t,
GLenum,
@@ -50,7 +50,7 @@
size_t,
const uint8_t *));
MOCK_METHOD8(setCompressedSubImage,
- gl::Error(ContextImpl *,
+ gl::Error(const gl::Context *,
GLenum,
size_t,
const gl::Box &,
@@ -59,21 +59,21 @@
size_t,
const uint8_t *));
MOCK_METHOD6(copyImage,
- gl::Error(ContextImpl *,
+ gl::Error(const gl::Context *,
GLenum,
size_t,
const gl::Rectangle &,
GLenum,
const gl::Framebuffer *));
MOCK_METHOD6(copySubImage,
- gl::Error(ContextImpl *,
+ gl::Error(const gl::Context *,
GLenum,
size_t,
const gl::Offset &,
const gl::Rectangle &,
const gl::Framebuffer *));
MOCK_METHOD10(copyTexture,
- gl::Error(ContextImpl *,
+ gl::Error(const gl::Context *,
GLenum,
size_t,
GLenum,
@@ -84,7 +84,7 @@
bool,
const gl::Texture *));
MOCK_METHOD10(copySubTexture,
- gl::Error(ContextImpl *,
+ gl::Error(const gl::Context *,
GLenum,
size_t,
const gl::Offset &,
@@ -94,20 +94,22 @@
bool,
bool,
const gl::Texture *));
- MOCK_METHOD2(copyCompressedTexture, gl::Error(ContextImpl *, const gl::Texture *source));
- MOCK_METHOD5(setStorage, gl::Error(ContextImpl *, GLenum, size_t, GLenum, const gl::Extents &));
+ MOCK_METHOD2(copyCompressedTexture, gl::Error(const gl::Context *, const gl::Texture *source));
+ MOCK_METHOD5(setStorage,
+ gl::Error(const gl::Context *, GLenum, size_t, GLenum, const gl::Extents &));
MOCK_METHOD3(setImageExternal,
gl::Error(GLenum, egl::Stream *, const egl::Stream::GLTextureDescription &));
MOCK_METHOD2(setEGLImageTarget, gl::Error(GLenum, egl::Image *));
- MOCK_METHOD1(generateMipmap, gl::Error(ContextImpl *));
+ MOCK_METHOD1(generateMipmap, gl::Error(const gl::Context *));
MOCK_METHOD1(bindTexImage, void(egl::Surface *));
MOCK_METHOD0(releaseTexImage, void(void));
MOCK_METHOD3(getAttachmentRenderTarget,
gl::Error(GLenum, const gl::ImageIndex &, FramebufferAttachmentRenderTarget **));
- MOCK_METHOD6(setStorageMultisample,
- gl::Error(ContextImpl *, GLenum, GLsizei, GLint, const gl::Extents &, GLboolean));
+ MOCK_METHOD6(
+ setStorageMultisample,
+ gl::Error(const gl::Context *, GLenum, GLsizei, GLint, const gl::Extents &, GLboolean));
MOCK_METHOD1(setBaseLevel, void(GLuint));
diff --git a/src/libANGLE/renderer/VertexArrayImpl.h b/src/libANGLE/renderer/VertexArrayImpl.h
index a933ba2..f31cf78 100644
--- a/src/libANGLE/renderer/VertexArrayImpl.h
+++ b/src/libANGLE/renderer/VertexArrayImpl.h
@@ -22,7 +22,10 @@
public:
VertexArrayImpl(const gl::VertexArrayState &data) : mData(data) {}
virtual ~VertexArrayImpl() { }
- virtual void syncState(ContextImpl *contextImpl, const gl::VertexArray::DirtyBits &dirtyBits) {}
+ virtual void syncState(const gl::Context *context, const gl::VertexArray::DirtyBits &dirtyBits)
+ {
+ }
+
protected:
const gl::VertexArrayState &mData;
};
diff --git a/src/libANGLE/renderer/d3d/FramebufferD3D.cpp b/src/libANGLE/renderer/d3d/FramebufferD3D.cpp
index 86653f6..20ce293 100644
--- a/src/libANGLE/renderer/d3d/FramebufferD3D.cpp
+++ b/src/libANGLE/renderer/d3d/FramebufferD3D.cpp
@@ -9,6 +9,7 @@
#include "libANGLE/renderer/d3d/FramebufferD3D.h"
#include "common/bitset_utils.h"
+#include "libANGLE/Context.h"
#include "libANGLE/Framebuffer.h"
#include "libANGLE/FramebufferAttachment.h"
#include "libANGLE/Surface.h"
@@ -95,13 +96,13 @@
{
}
-gl::Error FramebufferD3D::clear(ContextImpl *context, GLbitfield mask)
+gl::Error FramebufferD3D::clear(const gl::Context *context, GLbitfield mask)
{
ClearParameters clearParams = GetClearParameters(context->getGLState(), mask);
return clearImpl(context, clearParams);
}
-gl::Error FramebufferD3D::clearBufferfv(ContextImpl *context,
+gl::Error FramebufferD3D::clearBufferfv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLfloat *values)
@@ -128,7 +129,7 @@
return clearImpl(context, clearParams);
}
-gl::Error FramebufferD3D::clearBufferuiv(ContextImpl *context,
+gl::Error FramebufferD3D::clearBufferuiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLuint *values)
@@ -145,7 +146,7 @@
return clearImpl(context, clearParams);
}
-gl::Error FramebufferD3D::clearBufferiv(ContextImpl *context,
+gl::Error FramebufferD3D::clearBufferiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLint *values)
@@ -172,7 +173,7 @@
return clearImpl(context, clearParams);
}
-gl::Error FramebufferD3D::clearBufferfi(ContextImpl *context,
+gl::Error FramebufferD3D::clearBufferfi(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
GLfloat depth,
@@ -234,7 +235,7 @@
return implementationFormatInfo.getReadPixelsType();
}
-gl::Error FramebufferD3D::readPixels(ContextImpl *context,
+gl::Error FramebufferD3D::readPixels(const gl::Context *context,
const gl::Rectangle &area,
GLenum format,
GLenum type,
@@ -256,7 +257,7 @@
reinterpret_cast<uint8_t *>(pixels) + outputSkipBytes);
}
-gl::Error FramebufferD3D::blit(ContextImpl *context,
+gl::Error FramebufferD3D::blit(const gl::Context *context,
const gl::Rectangle &sourceArea,
const gl::Rectangle &destArea,
GLbitfield mask,
@@ -297,7 +298,7 @@
return true;
}
-void FramebufferD3D::syncState(ContextImpl *contextImpl,
+void FramebufferD3D::syncState(const gl::Context *context,
const gl::Framebuffer::DirtyBits &dirtyBits)
{
bool invalidateColorAttachmentCache = false;
diff --git a/src/libANGLE/renderer/d3d/FramebufferD3D.h b/src/libANGLE/renderer/d3d/FramebufferD3D.h
index 903b3fe..36c48fc 100644
--- a/src/libANGLE/renderer/d3d/FramebufferD3D.h
+++ b/src/libANGLE/renderer/d3d/FramebufferD3D.h
@@ -59,20 +59,20 @@
FramebufferD3D(const gl::FramebufferState &data, RendererD3D *renderer);
virtual ~FramebufferD3D();
- gl::Error clear(ContextImpl *impl, GLbitfield mask) override;
- gl::Error clearBufferfv(ContextImpl *impl,
+ gl::Error clear(const gl::Context *context, GLbitfield mask) override;
+ gl::Error clearBufferfv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLfloat *values) override;
- gl::Error clearBufferuiv(ContextImpl *impl,
+ gl::Error clearBufferuiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLuint *values) override;
- gl::Error clearBufferiv(ContextImpl *impl,
+ gl::Error clearBufferiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLint *values) override;
- gl::Error clearBufferfi(ContextImpl *impl,
+ gl::Error clearBufferfi(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
GLfloat depth,
@@ -80,13 +80,13 @@
GLenum getImplementationColorReadFormat() const override;
GLenum getImplementationColorReadType() const override;
- gl::Error readPixels(ContextImpl *impl,
+ gl::Error readPixels(const gl::Context *context,
const gl::Rectangle &area,
GLenum format,
GLenum type,
void *pixels) const override;
- gl::Error blit(ContextImpl *impl,
+ gl::Error blit(const gl::Context *context,
const gl::Rectangle &sourceArea,
const gl::Rectangle &destArea,
GLbitfield mask,
@@ -94,14 +94,15 @@
bool checkStatus() const override;
- void syncState(ContextImpl *contextImpl, const gl::Framebuffer::DirtyBits &dirtyBits) override;
+ void syncState(const gl::Context *context,
+ const gl::Framebuffer::DirtyBits &dirtyBits) override;
const gl::AttachmentList &getColorAttachmentsForRender() const;
gl::Error getSamplePosition(size_t index, GLfloat *xy) const override;
private:
- virtual gl::Error clearImpl(ContextImpl *impl, const ClearParameters &clearParams) = 0;
+ virtual gl::Error clearImpl(const gl::Context *context, const ClearParameters &clearParams) = 0;
virtual gl::Error readPixelsImpl(const gl::Rectangle &area,
GLenum format,
diff --git a/src/libANGLE/renderer/d3d/ProgramD3D.cpp b/src/libANGLE/renderer/d3d/ProgramD3D.cpp
index b8df596..11ed561 100644
--- a/src/libANGLE/renderer/d3d/ProgramD3D.cpp
+++ b/src/libANGLE/renderer/d3d/ProgramD3D.cpp
@@ -10,6 +10,7 @@
#include "common/bitset_utils.h"
#include "common/utilities.h"
+#include "libANGLE/Context.h"
#include "libANGLE/Framebuffer.h"
#include "libANGLE/FramebufferAttachment.h"
#include "libANGLE/Program.h"
@@ -691,7 +692,7 @@
}
}
-LinkResult ProgramD3D::load(const ContextImpl *contextImpl,
+LinkResult ProgramD3D::load(const gl::Context *context,
gl::InfoLog &infoLog,
gl::BinaryInputStream *stream)
{
@@ -1479,11 +1480,11 @@
return mComputeExecutable.get() != nullptr;
}
-LinkResult ProgramD3D::link(ContextImpl *contextImpl,
+LinkResult ProgramD3D::link(const gl::Context *context,
const gl::VaryingPacking &packing,
gl::InfoLog &infoLog)
{
- const auto &data = contextImpl->getContextState();
+ const auto &data = context->getContextState();
reset();
diff --git a/src/libANGLE/renderer/d3d/ProgramD3D.h b/src/libANGLE/renderer/d3d/ProgramD3D.h
index 47613ed..7db7fc7 100644
--- a/src/libANGLE/renderer/d3d/ProgramD3D.h
+++ b/src/libANGLE/renderer/d3d/ProgramD3D.h
@@ -158,7 +158,7 @@
bool usesGeometryShader(GLenum drawMode) const;
bool usesInstancedPointSpriteEmulation() const;
- LinkResult load(const ContextImpl *contextImpl,
+ LinkResult load(const gl::Context *context,
gl::InfoLog &infoLog,
gl::BinaryInputStream *stream) override;
gl::Error save(gl::BinaryOutputStream *stream) override;
@@ -178,7 +178,7 @@
ShaderExecutableD3D **outExecutable,
gl::InfoLog *infoLog);
gl::Error getComputeExecutable(ShaderExecutableD3D **outExecutable);
- LinkResult link(ContextImpl *contextImpl,
+ LinkResult link(const gl::Context *context,
const gl::VaryingPacking &packing,
gl::InfoLog &infoLog) override;
GLboolean validate(const gl::Caps &caps, gl::InfoLog *infoLog) override;
diff --git a/src/libANGLE/renderer/d3d/SurfaceD3D.cpp b/src/libANGLE/renderer/d3d/SurfaceD3D.cpp
index 4e3252d..251030f 100644
--- a/src/libANGLE/renderer/d3d/SurfaceD3D.cpp
+++ b/src/libANGLE/renderer/d3d/SurfaceD3D.cpp
@@ -81,7 +81,7 @@
SafeDelete(mSwapChain);
}
-egl::Error SurfaceD3D::initialize(const DisplayImpl *displayImpl)
+egl::Error SurfaceD3D::initialize(const egl::Display *display)
{
if (mNativeWindow->getNativeWindow())
{
@@ -91,12 +91,7 @@
}
}
- egl::Error error = resetSwapChain();
- if (error.isError())
- {
- return error;
- }
-
+ ANGLE_TRY(resetSwapChain());
return egl::Error(EGL_SUCCESS);
}
@@ -285,7 +280,7 @@
return wasDirty;
}
-egl::Error SurfaceD3D::swap(const DisplayImpl *displayImpl)
+egl::Error SurfaceD3D::swap(const egl::Display *display)
{
return swapRect(0, 0, mWidth, mHeight);
}
diff --git a/src/libANGLE/renderer/d3d/SurfaceD3D.h b/src/libANGLE/renderer/d3d/SurfaceD3D.h
index 3be2888..9f613e3 100644
--- a/src/libANGLE/renderer/d3d/SurfaceD3D.h
+++ b/src/libANGLE/renderer/d3d/SurfaceD3D.h
@@ -28,10 +28,10 @@
~SurfaceD3D() override;
void releaseSwapChain();
- egl::Error initialize(const DisplayImpl *displayImpl) override;
+ egl::Error initialize(const egl::Display *display) override;
FramebufferImpl *createDefaultFramebuffer(const gl::FramebufferState &state) override;
- egl::Error swap(const DisplayImpl *displayImpl) override;
+ egl::Error swap(const egl::Display *display) override;
egl::Error postSubBuffer(EGLint x, EGLint y, EGLint width, EGLint height) override;
egl::Error querySurfacePointerANGLE(EGLint attribute, void **value) override;
egl::Error bindTexImage(gl::Texture *texture, EGLint buffer) override;
diff --git a/src/libANGLE/renderer/d3d/TextureD3D.cpp b/src/libANGLE/renderer/d3d/TextureD3D.cpp
index 7aa5bfe..78e90b5 100644
--- a/src/libANGLE/renderer/d3d/TextureD3D.cpp
+++ b/src/libANGLE/renderer/d3d/TextureD3D.cpp
@@ -156,7 +156,7 @@
return (baseImage ? baseImage->getInternalFormat() : GL_NONE);
}
-gl::Error TextureD3D::setStorageMultisample(ContextImpl *contextImpl,
+gl::Error TextureD3D::setStorageMultisample(const gl::Context *context,
GLenum target,
GLsizei samples,
GLint internalFormat,
@@ -374,7 +374,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error TextureD3D::generateMipmap(ContextImpl *contextImpl)
+gl::Error TextureD3D::generateMipmap(const gl::Context *context)
{
const GLuint baseLevel = mState.getEffectiveBaseLevel();
const GLuint maxLevel = mState.getMipmapMaxLevel();
@@ -612,7 +612,7 @@
return nullptr;
}
-gl::Error TextureD3D_2DMultisample::setImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2DMultisample::setImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -626,7 +626,7 @@
return gl::InternalError();
}
-gl::Error TextureD3D_2DMultisample::setSubImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2DMultisample::setSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -639,7 +639,7 @@
return gl::InternalError();
}
-gl::Error TextureD3D_2DMultisample::setCompressedImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2DMultisample::setCompressedImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -652,7 +652,7 @@
return gl::InternalError();
}
-gl::Error TextureD3D_2DMultisample::setCompressedSubImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2DMultisample::setCompressedSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -665,7 +665,7 @@
return gl::InternalError();
}
-gl::Error TextureD3D_2DMultisample::copyImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2DMultisample::copyImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Rectangle &sourceArea,
@@ -676,7 +676,7 @@
return gl::InternalError();
}
-gl::Error TextureD3D_2DMultisample::copySubImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2DMultisample::copySubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
@@ -687,7 +687,7 @@
return gl::InternalError();
}
-gl::Error TextureD3D_2DMultisample::setStorage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2DMultisample::setStorage(const gl::Context *context,
GLenum target,
size_t levels,
GLenum internalFormat,
@@ -856,7 +856,7 @@
return gl::GetSizedInternalFormatInfo(getInternalFormat(level)).depthBits > 0;
}
-gl::Error TextureD3D_2D::setImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2D::setImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
GLenum internalFormat,
@@ -903,7 +903,7 @@
return gl::NoError();
}
-gl::Error TextureD3D_2D::setSubImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2D::setSubImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
const gl::Box &area,
@@ -930,7 +930,7 @@
}
}
-gl::Error TextureD3D_2D::setCompressedImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2D::setCompressedImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
GLenum internalFormat,
@@ -948,7 +948,7 @@
return setCompressedImageImpl(gl::ImageIndex::Make2D(level), unpack, pixels, 0);
}
-gl::Error TextureD3D_2D::setCompressedSubImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2D::setCompressedSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -965,7 +965,7 @@
return commitRegion(index, area);
}
-gl::Error TextureD3D_2D::copyImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2D::copyImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
const gl::Rectangle &sourceArea,
@@ -1005,7 +1005,7 @@
return gl::NoError();
}
-gl::Error TextureD3D_2D::copySubImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2D::copySubImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
const gl::Offset &destOffset,
@@ -1043,7 +1043,7 @@
return gl::NoError();
}
-gl::Error TextureD3D_2D::copyTexture(ContextImpl *contextImpl,
+gl::Error TextureD3D_2D::copyTexture(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -1097,7 +1097,7 @@
return gl::NoError();
}
-gl::Error TextureD3D_2D::copySubTexture(ContextImpl *contextImpl,
+gl::Error TextureD3D_2D::copySubTexture(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
@@ -1141,7 +1141,8 @@
return gl::NoError();
}
-gl::Error TextureD3D_2D::copyCompressedTexture(ContextImpl *contextImpl, const gl::Texture *source)
+gl::Error TextureD3D_2D::copyCompressedTexture(const gl::Context *context,
+ const gl::Texture *source)
{
GLenum sourceTarget = source->getTarget();
GLint sourceLevel = 0;
@@ -1162,7 +1163,7 @@
return gl::NoError();
}
-gl::Error TextureD3D_2D::setStorage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2D::setStorage(const gl::Context *context,
GLenum target,
size_t levels,
GLenum internalFormat,
@@ -1520,7 +1521,7 @@
mDirtyImages = true;
}
-gl::Error TextureD3D_2D::setStorageMultisample(ContextImpl *contextImpl,
+gl::Error TextureD3D_2D::setStorageMultisample(const gl::Context *context,
GLenum target,
GLsizei samples,
GLint internalFormat,
@@ -1598,7 +1599,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error TextureD3D_Cube::setImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_Cube::setImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -1619,7 +1620,7 @@
return setImageImpl(index, type, unpack, pixels, 0);
}
-gl::Error TextureD3D_Cube::setSubImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_Cube::setSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -1634,7 +1635,7 @@
return TextureD3D::subImage(index, area, format, type, unpack, pixels, 0);
}
-gl::Error TextureD3D_Cube::setCompressedImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_Cube::setCompressedImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -1654,7 +1655,7 @@
return setCompressedImageImpl(index, unpack, pixels, 0);
}
-gl::Error TextureD3D_Cube::setCompressedSubImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_Cube::setCompressedSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -1671,7 +1672,7 @@
return commitRegion(index, area);
}
-gl::Error TextureD3D_Cube::copyImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_Cube::copyImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
const gl::Rectangle &sourceArea,
@@ -1715,7 +1716,7 @@
return gl::NoError();
}
-gl::Error TextureD3D_Cube::copySubImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_Cube::copySubImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
const gl::Offset &destOffset,
@@ -1755,7 +1756,7 @@
return gl::NoError();
}
-gl::Error TextureD3D_Cube::copyTexture(ContextImpl *contextImpl,
+gl::Error TextureD3D_Cube::copyTexture(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -1811,7 +1812,7 @@
return gl::NoError();
}
-gl::Error TextureD3D_Cube::copySubTexture(ContextImpl *contextImpl,
+gl::Error TextureD3D_Cube::copySubTexture(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
@@ -1857,7 +1858,7 @@
return gl::NoError();
}
-gl::Error TextureD3D_Cube::setStorage(ContextImpl *contextImpl,
+gl::Error TextureD3D_Cube::setStorage(const gl::Context *context,
GLenum target,
size_t levels,
GLenum internalFormat,
@@ -2283,7 +2284,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error TextureD3D_3D::setImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_3D::setImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
GLenum internalFormat,
@@ -2330,7 +2331,7 @@
return gl::NoError();
}
-gl::Error TextureD3D_3D::setSubImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_3D::setSubImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
const gl::Box &area,
@@ -2359,7 +2360,7 @@
}
}
-gl::Error TextureD3D_3D::setCompressedImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_3D::setCompressedImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
GLenum internalFormat,
@@ -2378,7 +2379,7 @@
return setCompressedImageImpl(index, unpack, pixels, 0);
}
-gl::Error TextureD3D_3D::setCompressedSubImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_3D::setCompressedSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -2394,7 +2395,7 @@
return commitRegion(index, area);
}
-gl::Error TextureD3D_3D::copyImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_3D::copyImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Rectangle &sourceArea,
@@ -2405,7 +2406,7 @@
return gl::Error(GL_INVALID_OPERATION, "Copying 3D textures is unimplemented.");
}
-gl::Error TextureD3D_3D::copySubImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_3D::copySubImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
const gl::Offset &destOffset,
@@ -2442,7 +2443,7 @@
return gl::NoError();
}
-gl::Error TextureD3D_3D::setStorage(ContextImpl *contextImpl,
+gl::Error TextureD3D_3D::setStorage(const gl::Context *context,
GLenum target,
size_t levels,
GLenum internalFormat,
@@ -2804,7 +2805,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error TextureD3D_2DArray::setImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2DArray::setImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
GLenum internalFormat,
@@ -2836,7 +2837,7 @@
return gl::NoError();
}
-gl::Error TextureD3D_2DArray::setSubImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2DArray::setSubImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
const gl::Box &area,
@@ -2869,7 +2870,7 @@
return gl::NoError();
}
-gl::Error TextureD3D_2DArray::setCompressedImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2DArray::setCompressedImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
GLenum internalFormat,
@@ -2901,7 +2902,7 @@
return gl::NoError();
}
-gl::Error TextureD3D_2DArray::setCompressedSubImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2DArray::setCompressedSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -2934,7 +2935,7 @@
return gl::NoError();
}
-gl::Error TextureD3D_2DArray::copyImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2DArray::copyImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Rectangle &sourceArea,
@@ -2945,7 +2946,7 @@
return gl::Error(GL_INVALID_OPERATION, "Copying 2D array textures is unimplemented.");
}
-gl::Error TextureD3D_2DArray::copySubImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2DArray::copySubImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
const gl::Offset &destOffset,
@@ -2979,7 +2980,7 @@
return gl::NoError();
}
-gl::Error TextureD3D_2DArray::setStorage(ContextImpl *contextImpl,
+gl::Error TextureD3D_2DArray::setStorage(const gl::Context *context,
GLenum target,
size_t levels,
GLenum internalFormat,
@@ -3364,7 +3365,7 @@
return 1;
}
-gl::Error TextureD3D_External::setImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_External::setImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
GLenum internalFormat,
@@ -3379,7 +3380,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error TextureD3D_External::setSubImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_External::setSubImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
const gl::Box &area,
@@ -3392,7 +3393,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error TextureD3D_External::setCompressedImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_External::setCompressedImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
GLenum internalFormat,
@@ -3405,7 +3406,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error TextureD3D_External::setCompressedSubImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_External::setCompressedSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -3418,7 +3419,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error TextureD3D_External::copyImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_External::copyImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
const gl::Rectangle &sourceArea,
@@ -3429,7 +3430,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error TextureD3D_External::copySubImage(ContextImpl *contextImpl,
+gl::Error TextureD3D_External::copySubImage(const gl::Context *context,
GLenum target,
size_t imageLevel,
const gl::Offset &destOffset,
@@ -3440,7 +3441,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error TextureD3D_External::setStorage(ContextImpl *contextImpl,
+gl::Error TextureD3D_External::setStorage(const gl::Context *context,
GLenum target,
size_t levels,
GLenum internalFormat,
diff --git a/src/libANGLE/renderer/d3d/TextureD3D.h b/src/libANGLE/renderer/d3d/TextureD3D.h
index 5f91bc5..2df8d95 100644
--- a/src/libANGLE/renderer/d3d/TextureD3D.h
+++ b/src/libANGLE/renderer/d3d/TextureD3D.h
@@ -47,7 +47,7 @@
GLint getBaseLevelHeight() const;
GLenum getBaseLevelInternalFormat() const;
- gl::Error setStorageMultisample(ContextImpl *contextImpl,
+ gl::Error setStorageMultisample(const gl::Context *context,
GLenum target,
GLsizei samples,
GLint internalFormat,
@@ -69,7 +69,7 @@
virtual gl::Error setImageExternal(GLenum target,
egl::Stream *stream,
const egl::Stream::GLTextureDescription &desc) override;
- gl::Error generateMipmap(ContextImpl *contextImpl) override;
+ gl::Error generateMipmap(const gl::Context *context) override;
TextureStorage *getStorage();
ImageD3D *getBaseLevelImage() const;
@@ -155,7 +155,7 @@
GLenum getInternalFormat(GLint level) const;
bool isDepth(GLint level) const;
- gl::Error setImage(ContextImpl *contextImpl,
+ gl::Error setImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -164,7 +164,7 @@
GLenum type,
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) override;
- gl::Error setSubImage(ContextImpl *contextImpl,
+ gl::Error setSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -173,7 +173,7 @@
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) override;
- gl::Error setCompressedImage(ContextImpl *contextImpl,
+ gl::Error setCompressedImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -181,7 +181,7 @@
const gl::PixelUnpackState &unpack,
size_t imageSize,
const uint8_t *pixels) override;
- gl::Error setCompressedSubImage(ContextImpl *contextImpl,
+ gl::Error setCompressedSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -190,20 +190,20 @@
size_t imageSize,
const uint8_t *pixels) override;
- gl::Error copyImage(ContextImpl *contextImpl,
+ gl::Error copyImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Rectangle &sourceArea,
GLenum internalFormat,
const gl::Framebuffer *source) override;
- gl::Error copySubImage(ContextImpl *contextImpl,
+ gl::Error copySubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
const gl::Rectangle &sourceArea,
const gl::Framebuffer *source) override;
- gl::Error copyTexture(ContextImpl *contextImpl,
+ gl::Error copyTexture(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -213,7 +213,7 @@
bool unpackPremultiplyAlpha,
bool unpackUnmultiplyAlpha,
const gl::Texture *source) override;
- gl::Error copySubTexture(ContextImpl *contextImpl,
+ gl::Error copySubTexture(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
@@ -223,9 +223,9 @@
bool unpackPremultiplyAlpha,
bool unpackUnmultiplyAlpha,
const gl::Texture *source) override;
- gl::Error copyCompressedTexture(ContextImpl *contextImpl, const gl::Texture *source) override;
+ gl::Error copyCompressedTexture(const gl::Context *context, const gl::Texture *source) override;
- gl::Error setStorage(ContextImpl *contextImpl,
+ gl::Error setStorage(const gl::Context *context,
GLenum target,
size_t levels,
GLenum internalFormat,
@@ -242,7 +242,7 @@
virtual gl::ImageIndex getImageIndex(GLint mip, GLint layer) const;
virtual bool isValidIndex(const gl::ImageIndex &index) const;
- gl::Error setStorageMultisample(ContextImpl *contextImpl,
+ gl::Error setStorageMultisample(const gl::Context *context,
GLenum target,
GLsizei samples,
GLint internalFormat,
@@ -291,7 +291,7 @@
GLenum getInternalFormat(GLint level, GLint layer) const;
bool isDepth(GLint level, GLint layer) const;
- gl::Error setImage(ContextImpl *contextImpl,
+ gl::Error setImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -300,7 +300,7 @@
GLenum type,
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) override;
- gl::Error setSubImage(ContextImpl *contextImpl,
+ gl::Error setSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -309,7 +309,7 @@
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) override;
- gl::Error setCompressedImage(ContextImpl *contextImpl,
+ gl::Error setCompressedImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -317,7 +317,7 @@
const gl::PixelUnpackState &unpack,
size_t imageSize,
const uint8_t *pixels) override;
- gl::Error setCompressedSubImage(ContextImpl *contextImpl,
+ gl::Error setCompressedSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -326,20 +326,20 @@
size_t imageSize,
const uint8_t *pixels) override;
- gl::Error copyImage(ContextImpl *contextImpl,
+ gl::Error copyImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Rectangle &sourceArea,
GLenum internalFormat,
const gl::Framebuffer *source) override;
- gl::Error copySubImage(ContextImpl *contextImpl,
+ gl::Error copySubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
const gl::Rectangle &sourceArea,
const gl::Framebuffer *source) override;
- gl::Error copyTexture(ContextImpl *contextImpl,
+ gl::Error copyTexture(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -349,7 +349,7 @@
bool unpackPremultiplyAlpha,
bool unpackUnmultiplyAlpha,
const gl::Texture *source) override;
- gl::Error copySubTexture(ContextImpl *contextImpl,
+ gl::Error copySubTexture(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
@@ -360,7 +360,7 @@
bool unpackUnmultiplyAlpha,
const gl::Texture *source) override;
- gl::Error setStorage(ContextImpl *contextImpl,
+ gl::Error setStorage(const gl::Context *context,
GLenum target,
size_t levels,
GLenum internalFormat,
@@ -415,7 +415,7 @@
GLenum getInternalFormat(GLint level) const;
bool isDepth(GLint level) const;
- gl::Error setImage(ContextImpl *contextImpl,
+ gl::Error setImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -424,7 +424,7 @@
GLenum type,
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) override;
- gl::Error setSubImage(ContextImpl *contextImpl,
+ gl::Error setSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -433,7 +433,7 @@
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) override;
- gl::Error setCompressedImage(ContextImpl *contextImpl,
+ gl::Error setCompressedImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -441,7 +441,7 @@
const gl::PixelUnpackState &unpack,
size_t imageSize,
const uint8_t *pixels) override;
- gl::Error setCompressedSubImage(ContextImpl *contextImpl,
+ gl::Error setCompressedSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -450,20 +450,20 @@
size_t imageSize,
const uint8_t *pixels) override;
- gl::Error copyImage(ContextImpl *contextImpl,
+ gl::Error copyImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Rectangle &sourceArea,
GLenum internalFormat,
const gl::Framebuffer *source) override;
- gl::Error copySubImage(ContextImpl *contextImpl,
+ gl::Error copySubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
const gl::Rectangle &sourceArea,
const gl::Framebuffer *source) override;
- gl::Error setStorage(ContextImpl *contextImpl,
+ gl::Error setStorage(const gl::Context *context,
GLenum target,
size_t levels,
GLenum internalFormat,
@@ -517,7 +517,7 @@
GLenum getInternalFormat(GLint level) const;
bool isDepth(GLint level) const;
- gl::Error setImage(ContextImpl *contextImpl,
+ gl::Error setImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -526,7 +526,7 @@
GLenum type,
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) override;
- gl::Error setSubImage(ContextImpl *contextImpl,
+ gl::Error setSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -535,7 +535,7 @@
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) override;
- gl::Error setCompressedImage(ContextImpl *contextImpl,
+ gl::Error setCompressedImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -543,7 +543,7 @@
const gl::PixelUnpackState &unpack,
size_t imageSize,
const uint8_t *pixels) override;
- gl::Error setCompressedSubImage(ContextImpl *contextImpl,
+ gl::Error setCompressedSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -552,20 +552,20 @@
size_t imageSize,
const uint8_t *pixels) override;
- gl::Error copyImage(ContextImpl *contextImpl,
+ gl::Error copyImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Rectangle &sourceArea,
GLenum internalFormat,
const gl::Framebuffer *source) override;
- gl::Error copySubImage(ContextImpl *contextImpl,
+ gl::Error copySubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
const gl::Rectangle &sourceArea,
const gl::Framebuffer *source) override;
- gl::Error setStorage(ContextImpl *contextImpl,
+ gl::Error setStorage(const gl::Context *context,
GLenum target,
size_t levels,
GLenum internalFormat,
@@ -618,7 +618,7 @@
ImageD3D *getImage(const gl::ImageIndex &index) const override;
GLsizei getLayerCount(int level) const override;
- gl::Error setImage(ContextImpl *contextImpl,
+ gl::Error setImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -627,7 +627,7 @@
GLenum type,
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) override;
- gl::Error setSubImage(ContextImpl *contextImpl,
+ gl::Error setSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -636,7 +636,7 @@
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) override;
- gl::Error setCompressedImage(ContextImpl *contextImpl,
+ gl::Error setCompressedImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -644,7 +644,7 @@
const gl::PixelUnpackState &unpack,
size_t imageSize,
const uint8_t *pixels) override;
- gl::Error setCompressedSubImage(ContextImpl *contextImpl,
+ gl::Error setCompressedSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -653,20 +653,20 @@
size_t imageSize,
const uint8_t *pixels) override;
- gl::Error copyImage(ContextImpl *contextImpl,
+ gl::Error copyImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Rectangle &sourceArea,
GLenum internalFormat,
const gl::Framebuffer *source) override;
- gl::Error copySubImage(ContextImpl *contextImpl,
+ gl::Error copySubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
const gl::Rectangle &sourceArea,
const gl::Framebuffer *source) override;
- gl::Error setStorage(ContextImpl *contextImpl,
+ gl::Error setStorage(const gl::Context *context,
GLenum target,
size_t levels,
GLenum internalFormat,
@@ -709,7 +709,7 @@
~TextureD3D_2DMultisample() override;
ImageD3D *getImage(const gl::ImageIndex &index) const override;
- gl::Error setImage(ContextImpl *contextImpl,
+ gl::Error setImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -718,7 +718,7 @@
GLenum type,
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) override;
- gl::Error setSubImage(ContextImpl *contextImpl,
+ gl::Error setSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -727,7 +727,7 @@
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) override;
- gl::Error setCompressedImage(ContextImpl *contextImpl,
+ gl::Error setCompressedImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -735,7 +735,7 @@
const gl::PixelUnpackState &unpack,
size_t imageSize,
const uint8_t *pixels) override;
- gl::Error setCompressedSubImage(ContextImpl *contextImpl,
+ gl::Error setCompressedSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -744,20 +744,20 @@
size_t imageSize,
const uint8_t *pixels) override;
- gl::Error copyImage(ContextImpl *contextImpl,
+ gl::Error copyImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Rectangle &sourceArea,
GLenum internalFormat,
const gl::Framebuffer *source) override;
- gl::Error copySubImage(ContextImpl *contextImpl,
+ gl::Error copySubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
const gl::Rectangle &sourceArea,
const gl::Framebuffer *source) override;
- gl::Error setStorage(ContextImpl *contextImpl,
+ gl::Error setStorage(const gl::Context *context,
GLenum target,
size_t levels,
GLenum internalFormat,
diff --git a/src/libANGLE/renderer/d3d/d3d11/Buffer11.cpp b/src/libANGLE/renderer/d3d/d3d11/Buffer11.cpp
index d0e7e0b..8197412 100644
--- a/src/libANGLE/renderer/d3d/d3d11/Buffer11.cpp
+++ b/src/libANGLE/renderer/d3d/d3d11/Buffer11.cpp
@@ -299,7 +299,7 @@
mRenderer->onBufferDelete(this);
}
-gl::Error Buffer11::setData(ContextImpl *context,
+gl::Error Buffer11::setData(const gl::Context *context,
GLenum target,
const void *data,
size_t size,
@@ -328,7 +328,7 @@
return GetAs<SystemMemoryStorage>(storage);
}
-gl::Error Buffer11::setSubData(ContextImpl * /*context*/,
+gl::Error Buffer11::setSubData(const gl::Context * /*context*/,
GLenum target,
const void *data,
size_t size,
@@ -388,7 +388,7 @@
return gl::NoError();
}
-gl::Error Buffer11::copySubData(ContextImpl *context,
+gl::Error Buffer11::copySubData(const gl::Context *context,
BufferImpl *source,
GLintptr sourceOffset,
GLintptr destOffset,
@@ -452,7 +452,7 @@
return gl::NoError();
}
-gl::Error Buffer11::map(ContextImpl *context, GLenum access, void **mapPtr)
+gl::Error Buffer11::map(const gl::Context *context, GLenum access, void **mapPtr)
{
// GL_OES_mapbuffer uses an enum instead of a bitfield for it's access, convert to a bitfield
// and call mapRange.
@@ -460,7 +460,7 @@
return mapRange(context, 0, mSize, GL_MAP_WRITE_BIT, mapPtr);
}
-gl::Error Buffer11::mapRange(ContextImpl *context,
+gl::Error Buffer11::mapRange(const gl::Context *context,
size_t offset,
size_t length,
GLbitfield access,
@@ -504,7 +504,7 @@
return gl::NoError();
}
-gl::Error Buffer11::unmap(ContextImpl *context, GLboolean *result)
+gl::Error Buffer11::unmap(const gl::Context *context, GLboolean *result)
{
ASSERT(mMappedStorage);
mMappedStorage->unmap();
diff --git a/src/libANGLE/renderer/d3d/d3d11/Buffer11.h b/src/libANGLE/renderer/d3d/d3d11/Buffer11.h
index a198f45..4ae869d 100644
--- a/src/libANGLE/renderer/d3d/d3d11/Buffer11.h
+++ b/src/libANGLE/renderer/d3d/d3d11/Buffer11.h
@@ -76,28 +76,28 @@
void invalidateStaticData() override;
// BufferImpl implementation
- gl::Error setData(ContextImpl *context,
+ gl::Error setData(const gl::Context *context,
GLenum target,
const void *data,
size_t size,
GLenum usage) override;
- gl::Error setSubData(ContextImpl *context,
+ gl::Error setSubData(const gl::Context *context,
GLenum target,
const void *data,
size_t size,
size_t offset) override;
- gl::Error copySubData(ContextImpl *contextImpl,
+ gl::Error copySubData(const gl::Context *context,
BufferImpl *source,
GLintptr sourceOffset,
GLintptr destOffset,
GLsizeiptr size) override;
- gl::Error map(ContextImpl *contextImpl, GLenum access, void **mapPtr) override;
- gl::Error mapRange(ContextImpl *contextImpl,
+ gl::Error map(const gl::Context *context, GLenum access, void **mapPtr) override;
+ gl::Error mapRange(const gl::Context *context,
size_t offset,
size_t length,
GLbitfield access,
void **mapPtr) override;
- gl::Error unmap(ContextImpl *contextImpl, GLboolean *result) override;
+ gl::Error unmap(const gl::Context *context, GLboolean *result) override;
gl::Error markTransformFeedbackUsage() override;
// We use two set of dirty events. Static buffers are marked dirty whenever
diff --git a/src/libANGLE/renderer/d3d/d3d11/Context11.cpp b/src/libANGLE/renderer/d3d/d3d11/Context11.cpp
index 5a960fe..9085565 100644
--- a/src/libANGLE/renderer/d3d/d3d11/Context11.cpp
+++ b/src/libANGLE/renderer/d3d/d3d11/Context11.cpp
@@ -149,39 +149,44 @@
return mRenderer->finish();
}
-gl::Error Context11::drawArrays(GLenum mode, GLint first, GLsizei count)
+gl::Error Context11::drawArrays(const gl::Context *context, GLenum mode, GLint first, GLsizei count)
{
- return mRenderer->genericDrawArrays(this, mode, first, count, 0);
+ return mRenderer->genericDrawArrays(context, mode, first, count, 0);
}
-gl::Error Context11::drawArraysInstanced(GLenum mode,
+gl::Error Context11::drawArraysInstanced(const gl::Context *context,
+ GLenum mode,
GLint first,
GLsizei count,
GLsizei instanceCount)
{
- return mRenderer->genericDrawArrays(this, mode, first, count, instanceCount);
+ return mRenderer->genericDrawArrays(context, mode, first, count, instanceCount);
}
-gl::Error Context11::drawElements(GLenum mode,
+gl::Error Context11::drawElements(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
const gl::IndexRange &indexRange)
{
- return mRenderer->genericDrawElements(this, mode, count, type, indices, 0, indexRange);
+ return mRenderer->genericDrawElements(context, mode, count, type, indices, 0, indexRange);
}
-gl::Error Context11::drawElementsInstanced(GLenum mode,
+gl::Error Context11::drawElementsInstanced(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
GLsizei instances,
const gl::IndexRange &indexRange)
{
- return mRenderer->genericDrawElements(this, mode, count, type, indices, instances, indexRange);
+ return mRenderer->genericDrawElements(context, mode, count, type, indices, instances,
+ indexRange);
}
-gl::Error Context11::drawRangeElements(GLenum mode,
+gl::Error Context11::drawRangeElements(const gl::Context *context,
+ GLenum mode,
GLuint start,
GLuint end,
GLsizei count,
@@ -189,17 +194,22 @@
const void *indices,
const gl::IndexRange &indexRange)
{
- return mRenderer->genericDrawElements(this, mode, count, type, indices, 0, indexRange);
+ return mRenderer->genericDrawElements(context, mode, count, type, indices, 0, indexRange);
}
-gl::Error Context11::drawArraysIndirect(GLenum mode, const void *indirect)
+gl::Error Context11::drawArraysIndirect(const gl::Context *context,
+ GLenum mode,
+ const void *indirect)
{
- return mRenderer->genericDrawIndirect(this, mode, GL_NONE, indirect);
+ return mRenderer->genericDrawIndirect(context, mode, GL_NONE, indirect);
}
-gl::Error Context11::drawElementsIndirect(GLenum mode, GLenum type, const void *indirect)
+gl::Error Context11::drawElementsIndirect(const gl::Context *context,
+ GLenum mode,
+ GLenum type,
+ const void *indirect)
{
- return mRenderer->genericDrawIndirect(this, mode, type, indirect);
+ return mRenderer->genericDrawIndirect(context, mode, type, indirect);
}
GLenum Context11::getResetStatus()
diff --git a/src/libANGLE/renderer/d3d/d3d11/Context11.h b/src/libANGLE/renderer/d3d/d3d11/Context11.h
index 6947877..f27dc09 100644
--- a/src/libANGLE/renderer/d3d/d3d11/Context11.h
+++ b/src/libANGLE/renderer/d3d/d3d11/Context11.h
@@ -64,32 +64,44 @@
gl::Error finish() override;
// Drawing methods.
- gl::Error drawArrays(GLenum mode, GLint first, GLsizei count) override;
- gl::Error drawArraysInstanced(GLenum mode,
+ gl::Error drawArrays(const gl::Context *context,
+ GLenum mode,
+ GLint first,
+ GLsizei count) override;
+ gl::Error drawArraysInstanced(const gl::Context *context,
+ GLenum mode,
GLint first,
GLsizei count,
GLsizei instanceCount) override;
- gl::Error drawElements(GLenum mode,
+ gl::Error drawElements(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
const gl::IndexRange &indexRange) override;
- gl::Error drawElementsInstanced(GLenum mode,
+ gl::Error drawElementsInstanced(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
GLsizei instances,
const gl::IndexRange &indexRange) override;
- gl::Error drawRangeElements(GLenum mode,
+ gl::Error drawRangeElements(const gl::Context *context,
+ GLenum mode,
GLuint start,
GLuint end,
GLsizei count,
GLenum type,
const void *indices,
const gl::IndexRange &indexRange) override;
- gl::Error drawArraysIndirect(GLenum mode, const void *indirect) override;
- gl::Error drawElementsIndirect(GLenum mode, GLenum type, const void *indirect) override;
+ gl::Error drawArraysIndirect(const gl::Context *context,
+ GLenum mode,
+ const void *indirect) override;
+ gl::Error drawElementsIndirect(const gl::Context *context,
+ GLenum mode,
+ GLenum type,
+ const void *indirect) override;
// Device loss
GLenum getResetStatus() override;
diff --git a/src/libANGLE/renderer/d3d/d3d11/Framebuffer11.cpp b/src/libANGLE/renderer/d3d/d3d11/Framebuffer11.cpp
index 4cbabbc..f111e4f 100644
--- a/src/libANGLE/renderer/d3d/d3d11/Framebuffer11.cpp
+++ b/src/libANGLE/renderer/d3d/d3d11/Framebuffer11.cpp
@@ -104,7 +104,7 @@
return gl::NoError();
}
-gl::Error Framebuffer11::clearImpl(ContextImpl *context, const ClearParameters &clearParams)
+gl::Error Framebuffer11::clearImpl(const gl::Context *context, const ClearParameters &clearParams)
{
Clear11 *clearer = mRenderer->getClearer();
@@ -376,7 +376,8 @@
&mDepthStencilRenderTargetDirty);
}
-void Framebuffer11::syncState(ContextImpl *contextImpl, const gl::Framebuffer::DirtyBits &dirtyBits)
+void Framebuffer11::syncState(const gl::Context *context,
+ const gl::Framebuffer::DirtyBits &dirtyBits)
{
mRenderer->getStateManager()->invalidateRenderTarget();
@@ -409,7 +410,7 @@
// We should not have dirtied any additional state during our sync.
ASSERT(!mInternalDirtyBits.any());
- FramebufferD3D::syncState(contextImpl, dirtyBits);
+ FramebufferD3D::syncState(context, dirtyBits);
}
void Framebuffer11::signal(size_t channelID)
@@ -438,9 +439,9 @@
return mInternalDirtyBits.any();
}
-void Framebuffer11::syncInternalState(ContextImpl *contextImpl)
+void Framebuffer11::syncInternalState(const gl::Context *context)
{
- syncState(contextImpl, gl::Framebuffer::DirtyBits());
+ syncState(context, gl::Framebuffer::DirtyBits());
}
} // namespace rx
diff --git a/src/libANGLE/renderer/d3d/d3d11/Framebuffer11.h b/src/libANGLE/renderer/d3d/d3d11/Framebuffer11.h
index 383caf6..f42c4a9 100644
--- a/src/libANGLE/renderer/d3d/d3d11/Framebuffer11.h
+++ b/src/libANGLE/renderer/d3d/d3d11/Framebuffer11.h
@@ -30,7 +30,8 @@
// Invalidate the cached swizzles of all bound texture attachments.
gl::Error markAttachmentsDirty() const;
- void syncState(ContextImpl *contextImpl, const gl::Framebuffer::DirtyBits &dirtyBits) override;
+ void syncState(const gl::Context *context,
+ const gl::Framebuffer::DirtyBits &dirtyBits) override;
const RenderTargetArray &getCachedColorRenderTargets() const
{
@@ -42,14 +43,14 @@
}
bool hasAnyInternalDirtyBit() const;
- void syncInternalState(ContextImpl *contextImpl);
+ void syncInternalState(const gl::Context *context);
void signal(size_t channelID) override;
gl::Error getSamplePosition(size_t index, GLfloat *xy) const override;
private:
- gl::Error clearImpl(ContextImpl *context, const ClearParameters &clearParams) override;
+ gl::Error clearImpl(const gl::Context *context, const ClearParameters &clearParams) override;
gl::Error readPixelsImpl(const gl::Rectangle &area,
GLenum format,
diff --git a/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp b/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp
index f7dbd88..9f21206 100644
--- a/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp
+++ b/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp
@@ -15,6 +15,7 @@
#include "common/tls.h"
#include "common/utilities.h"
#include "libANGLE/Buffer.h"
+#include "libANGLE/Context.h"
#include "libANGLE/Display.h"
#include "libANGLE/Framebuffer.h"
#include "libANGLE/FramebufferAttachment.h"
@@ -1665,16 +1666,16 @@
return gl::NoError();
}
-gl::Error Renderer11::updateState(ContextImpl *contextImpl, GLenum drawMode)
+gl::Error Renderer11::updateState(const gl::Context *context, GLenum drawMode)
{
- const auto &data = contextImpl->getContextState();
+ const auto &data = context->getContextState();
const auto &glState = data.getState();
// Applies the render target surface, depth stencil surface, viewport rectangle and
// scissor rectangle to the renderer
gl::Framebuffer *framebuffer = glState.getDrawFramebuffer();
ASSERT(framebuffer && !framebuffer->hasAnyDirtyBit() && framebuffer->cachedComplete());
- ANGLE_TRY(mStateManager.syncFramebuffer(contextImpl, framebuffer));
+ ANGLE_TRY(mStateManager.syncFramebuffer(context, framebuffer));
// Set the present path state
auto firstColorAttachment = framebuffer->getFirstColorbuffer();
@@ -4659,7 +4660,7 @@
return new Context11(state, this);
}
-gl::Error Renderer11::genericDrawElements(Context11 *context,
+gl::Error Renderer11::genericDrawElements(const gl::Context *context,
GLenum mode,
GLsizei count,
GLenum type,
@@ -4698,7 +4699,7 @@
size_t vertexCount = indexInfo.indexRange.vertexCount();
ANGLE_TRY(applyVertexBuffer(glState, mode, static_cast<GLsizei>(indexInfo.indexRange.start),
static_cast<GLsizei>(vertexCount), instances, &indexInfo));
- ANGLE_TRY(applyTextures(context, data));
+ ANGLE_TRY(applyTextures(context->getImplementation(), data));
ANGLE_TRY(applyShaders(data, mode));
ANGLE_TRY(programD3D->applyUniformBuffers(data));
@@ -4710,7 +4711,7 @@
return gl::NoError();
}
-gl::Error Renderer11::genericDrawArrays(Context11 *context,
+gl::Error Renderer11::genericDrawArrays(const gl::Context *context,
GLenum mode,
GLint first,
GLsizei count,
@@ -4734,7 +4735,7 @@
ANGLE_TRY(updateState(context, mode));
ANGLE_TRY(applyTransformFeedbackBuffers(data));
ANGLE_TRY(applyVertexBuffer(glState, mode, first, count, instances, nullptr));
- ANGLE_TRY(applyTextures(context, data));
+ ANGLE_TRY(applyTextures(context->getImplementation(), data));
ANGLE_TRY(applyShaders(data, mode));
ANGLE_TRY(programD3D->applyUniformBuffers(data));
@@ -4751,7 +4752,7 @@
return gl::NoError();
}
-gl::Error Renderer11::genericDrawIndirect(Context11 *context,
+gl::Error Renderer11::genericDrawIndirect(const gl::Context *context,
GLenum mode,
GLenum type,
const void *indirect)
@@ -4769,7 +4770,7 @@
ANGLE_TRY(updateState(context, mode));
ANGLE_TRY(applyTransformFeedbackBuffers(data));
ASSERT(!glState.isTransformFeedbackActiveUnpaused());
- ANGLE_TRY(applyTextures(context, data));
+ ANGLE_TRY(applyTextures(context->getImplementation(), data));
ANGLE_TRY(applyShaders(data, mode));
ANGLE_TRY(programD3D->applyUniformBuffers(data));
diff --git a/src/libANGLE/renderer/d3d/d3d11/Renderer11.h b/src/libANGLE/renderer/d3d/d3d11/Renderer11.h
index 267e24d..fc1fbb3 100644
--- a/src/libANGLE/renderer/d3d/d3d11/Renderer11.h
+++ b/src/libANGLE/renderer/d3d/d3d11/Renderer11.h
@@ -148,7 +148,7 @@
const std::vector<GLint> &vertexUniformBuffers,
const std::vector<GLint> &fragmentUniformBuffers) override;
- gl::Error updateState(ContextImpl *contextImpl, GLenum drawMode);
+ gl::Error updateState(const gl::Context *context, GLenum drawMode);
bool applyPrimitiveType(GLenum mode, GLsizei count, bool usesPointSize);
gl::Error applyUniforms(const ProgramD3D &programD3D,
@@ -384,13 +384,13 @@
egl::Error getEGLDevice(DeviceImpl **device) override;
- gl::Error genericDrawArrays(Context11 *context,
+ gl::Error genericDrawArrays(const gl::Context *context,
GLenum mode,
GLint first,
GLsizei count,
GLsizei instances);
- gl::Error genericDrawElements(Context11 *context,
+ gl::Error genericDrawElements(const gl::Context *context,
GLenum mode,
GLsizei count,
GLenum type,
@@ -398,7 +398,7 @@
GLsizei instances,
const gl::IndexRange &indexRange);
- gl::Error genericDrawIndirect(Context11 *context,
+ gl::Error genericDrawIndirect(const gl::Context *context,
GLenum mode,
GLenum type,
const void *indirect);
diff --git a/src/libANGLE/renderer/d3d/d3d11/StateManager11.cpp b/src/libANGLE/renderer/d3d/d3d11/StateManager11.cpp
index a920d0a..506ed87 100644
--- a/src/libANGLE/renderer/d3d/d3d11/StateManager11.cpp
+++ b/src/libANGLE/renderer/d3d/d3d11/StateManager11.cpp
@@ -986,7 +986,7 @@
mCurrentValueAttribs.clear();
}
-gl::Error StateManager11::syncFramebuffer(ContextImpl *contextImpl, gl::Framebuffer *framebuffer)
+gl::Error StateManager11::syncFramebuffer(const gl::Context *context, gl::Framebuffer *framebuffer)
{
Framebuffer11 *framebuffer11 = GetImplAs<Framebuffer11>(framebuffer);
ANGLE_TRY(framebuffer11->markAttachmentsDirty());
@@ -994,7 +994,7 @@
if (framebuffer11->hasAnyInternalDirtyBit())
{
ASSERT(framebuffer->id() != 0);
- framebuffer11->syncInternalState(contextImpl);
+ framebuffer11->syncInternalState(context);
}
if (!mRenderTargetIsDirty)
diff --git a/src/libANGLE/renderer/d3d/d3d11/StateManager11.h b/src/libANGLE/renderer/d3d/d3d11/StateManager11.h
index 83e8dfa..f9dea00 100644
--- a/src/libANGLE/renderer/d3d/d3d11/StateManager11.h
+++ b/src/libANGLE/renderer/d3d/d3d11/StateManager11.h
@@ -86,7 +86,7 @@
ID3D11ShaderResourceView *srv);
gl::Error clearTextures(gl::SamplerType samplerType, size_t rangeStart, size_t rangeEnd);
- gl::Error syncFramebuffer(ContextImpl *contextImpl, gl::Framebuffer *framebuffer);
+ gl::Error syncFramebuffer(const gl::Context *context, gl::Framebuffer *framebuffer);
void invalidateRenderTarget();
void invalidateBoundViews();
diff --git a/src/libANGLE/renderer/d3d/d3d11/VertexArray11.cpp b/src/libANGLE/renderer/d3d/d3d11/VertexArray11.cpp
index 73814a7..9083d9e 100644
--- a/src/libANGLE/renderer/d3d/d3d11/VertexArray11.cpp
+++ b/src/libANGLE/renderer/d3d/d3d11/VertexArray11.cpp
@@ -40,7 +40,8 @@
}
}
-void VertexArray11::syncState(ContextImpl *contextImpl, const gl::VertexArray::DirtyBits &dirtyBits)
+void VertexArray11::syncState(const gl::Context *context,
+ const gl::VertexArray::DirtyBits &dirtyBits)
{
for (auto dirtyBit : dirtyBits)
{
diff --git a/src/libANGLE/renderer/d3d/d3d11/VertexArray11.h b/src/libANGLE/renderer/d3d/d3d11/VertexArray11.h
index 4fda434..7eb453b 100644
--- a/src/libANGLE/renderer/d3d/d3d11/VertexArray11.h
+++ b/src/libANGLE/renderer/d3d/d3d11/VertexArray11.h
@@ -24,7 +24,8 @@
VertexArray11(const gl::VertexArrayState &data);
~VertexArray11() override;
- void syncState(ContextImpl *contextImpl, const gl::VertexArray::DirtyBits &dirtyBits) override;
+ void syncState(const gl::Context *context,
+ const gl::VertexArray::DirtyBits &dirtyBits) override;
// This will flush any pending attrib updates and then check the dynamic attribs mask.
bool hasDynamicAttrib(const gl::State &state);
gl::Error updateDirtyAndDynamicAttribs(VertexDataManager *vertexDataManager,
diff --git a/src/libANGLE/renderer/d3d/d3d9/Buffer9.cpp b/src/libANGLE/renderer/d3d/d3d9/Buffer9.cpp
index 534a252..1e65b71 100644
--- a/src/libANGLE/renderer/d3d/d3d9/Buffer9.cpp
+++ b/src/libANGLE/renderer/d3d/d3d9/Buffer9.cpp
@@ -22,7 +22,7 @@
mSize = 0;
}
-gl::Error Buffer9::setData(ContextImpl * /*context*/,
+gl::Error Buffer9::setData(const gl::Context * /*context*/,
GLenum /*target*/,
const void *data,
size_t size,
@@ -55,7 +55,7 @@
return gl::NoError();
}
-gl::Error Buffer9::setSubData(ContextImpl * /*context*/,
+gl::Error Buffer9::setSubData(const gl::Context * /*context*/,
GLenum /*target*/,
const void *data,
size_t size,
@@ -80,7 +80,7 @@
return gl::NoError();
}
-gl::Error Buffer9::copySubData(ContextImpl *context,
+gl::Error Buffer9::copySubData(const gl::Context *context,
BufferImpl *source,
GLintptr sourceOffset,
GLintptr destOffset,
@@ -98,13 +98,13 @@
}
// We do not support buffer mapping in D3D9
-gl::Error Buffer9::map(ContextImpl *context, GLenum access, void **mapPtr)
+gl::Error Buffer9::map(const gl::Context *context, GLenum access, void **mapPtr)
{
UNREACHABLE();
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error Buffer9::mapRange(ContextImpl *context,
+gl::Error Buffer9::mapRange(const gl::Context *context,
size_t offset,
size_t length,
GLbitfield access,
@@ -114,7 +114,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error Buffer9::unmap(ContextImpl *context, GLboolean *result)
+gl::Error Buffer9::unmap(const gl::Context *context, GLboolean *result)
{
UNREACHABLE();
return gl::Error(GL_INVALID_OPERATION);
diff --git a/src/libANGLE/renderer/d3d/d3d9/Buffer9.h b/src/libANGLE/renderer/d3d/d3d9/Buffer9.h
index a0a6ccc..6173afa 100644
--- a/src/libANGLE/renderer/d3d/d3d9/Buffer9.h
+++ b/src/libANGLE/renderer/d3d/d3d9/Buffer9.h
@@ -29,28 +29,28 @@
gl::Error getData(const uint8_t **outData) override;
// BufferImpl implementation
- gl::Error setData(ContextImpl *context,
+ gl::Error setData(const gl::Context *context,
GLenum target,
const void *data,
size_t size,
GLenum usage) override;
- gl::Error setSubData(ContextImpl *context,
+ gl::Error setSubData(const gl::Context *context,
GLenum target,
const void *data,
size_t size,
size_t offset) override;
- gl::Error copySubData(ContextImpl *context,
+ gl::Error copySubData(const gl::Context *context,
BufferImpl *source,
GLintptr sourceOffset,
GLintptr destOffset,
GLsizeiptr size) override;
- gl::Error map(ContextImpl *context, GLenum access, void **mapPtr) override;
- gl::Error mapRange(ContextImpl *context,
+ gl::Error map(const gl::Context *context, GLenum access, void **mapPtr) override;
+ gl::Error mapRange(const gl::Context *context,
size_t offset,
size_t length,
GLbitfield access,
void **mapPtr) override;
- gl::Error unmap(ContextImpl *context, GLboolean *result) override;
+ gl::Error unmap(const gl::Context *context, GLboolean *result) override;
gl::Error markTransformFeedbackUsage() override;
private:
diff --git a/src/libANGLE/renderer/d3d/d3d9/Context9.cpp b/src/libANGLE/renderer/d3d/d3d9/Context9.cpp
index 3263980..ba56811 100644
--- a/src/libANGLE/renderer/d3d/d3d9/Context9.cpp
+++ b/src/libANGLE/renderer/d3d/d3d9/Context9.cpp
@@ -135,12 +135,13 @@
return mRenderer->finish();
}
-gl::Error Context9::drawArrays(GLenum mode, GLint first, GLsizei count)
+gl::Error Context9::drawArrays(const gl::Context *context, GLenum mode, GLint first, GLsizei count)
{
return mRenderer->genericDrawArrays(this, mode, first, count, 0);
}
-gl::Error Context9::drawArraysInstanced(GLenum mode,
+gl::Error Context9::drawArraysInstanced(const gl::Context *context,
+ GLenum mode,
GLint first,
GLsizei count,
GLsizei instanceCount)
@@ -148,7 +149,8 @@
return mRenderer->genericDrawArrays(this, mode, first, count, instanceCount);
}
-gl::Error Context9::drawElements(GLenum mode,
+gl::Error Context9::drawElements(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
@@ -157,7 +159,8 @@
return mRenderer->genericDrawElements(this, mode, count, type, indices, 0, indexRange);
}
-gl::Error Context9::drawElementsInstanced(GLenum mode,
+gl::Error Context9::drawElementsInstanced(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
@@ -167,7 +170,8 @@
return mRenderer->genericDrawElements(this, mode, count, type, indices, instances, indexRange);
}
-gl::Error Context9::drawRangeElements(GLenum mode,
+gl::Error Context9::drawRangeElements(const gl::Context *context,
+ GLenum mode,
GLuint start,
GLuint end,
GLsizei count,
@@ -178,13 +182,18 @@
return mRenderer->genericDrawElements(this, mode, count, type, indices, 0, indexRange);
}
-gl::Error Context9::drawArraysIndirect(GLenum mode, const void *indirect)
+gl::Error Context9::drawArraysIndirect(const gl::Context *context,
+ GLenum mode,
+ const void *indirect)
{
UNREACHABLE();
return gl::InternalError() << "D3D9 doesn't support ES 3.1 DrawArraysIndirect API";
}
-gl::Error Context9::drawElementsIndirect(GLenum mode, GLenum type, const void *indirect)
+gl::Error Context9::drawElementsIndirect(const gl::Context *context,
+ GLenum mode,
+ GLenum type,
+ const void *indirect)
{
UNREACHABLE();
return gl::InternalError() << "D3D9 doesn't support ES 3.1 DrawElementsIndirect API";
diff --git a/src/libANGLE/renderer/d3d/d3d9/Context9.h b/src/libANGLE/renderer/d3d/d3d9/Context9.h
index f69ed97..132bf4e 100644
--- a/src/libANGLE/renderer/d3d/d3d9/Context9.h
+++ b/src/libANGLE/renderer/d3d/d3d9/Context9.h
@@ -64,32 +64,44 @@
gl::Error finish() override;
// Drawing methods.
- gl::Error drawArrays(GLenum mode, GLint first, GLsizei count) override;
- gl::Error drawArraysInstanced(GLenum mode,
+ gl::Error drawArrays(const gl::Context *context,
+ GLenum mode,
+ GLint first,
+ GLsizei count) override;
+ gl::Error drawArraysInstanced(const gl::Context *context,
+ GLenum mode,
GLint first,
GLsizei count,
GLsizei instanceCount) override;
- gl::Error drawElements(GLenum mode,
+ gl::Error drawElements(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
const gl::IndexRange &indexRange) override;
- gl::Error drawElementsInstanced(GLenum mode,
+ gl::Error drawElementsInstanced(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
GLsizei instances,
const gl::IndexRange &indexRange) override;
- gl::Error drawRangeElements(GLenum mode,
+ gl::Error drawRangeElements(const gl::Context *context,
+ GLenum mode,
GLuint start,
GLuint end,
GLsizei count,
GLenum type,
const void *indices,
const gl::IndexRange &indexRange) override;
- gl::Error drawArraysIndirect(GLenum mode, const void *indirect) override;
- gl::Error drawElementsIndirect(GLenum mode, GLenum type, const void *indirect) override;
+ gl::Error drawArraysIndirect(const gl::Context *context,
+ GLenum mode,
+ const void *indirect) override;
+ gl::Error drawElementsIndirect(const gl::Context *context,
+ GLenum mode,
+ GLenum type,
+ const void *indirect) override;
// Device loss
GLenum getResetStatus() override;
diff --git a/src/libANGLE/renderer/d3d/d3d9/Framebuffer9.cpp b/src/libANGLE/renderer/d3d/d3d9/Framebuffer9.cpp
index 9155c98..eb09437 100644
--- a/src/libANGLE/renderer/d3d/d3d9/Framebuffer9.cpp
+++ b/src/libANGLE/renderer/d3d/d3d9/Framebuffer9.cpp
@@ -8,18 +8,19 @@
#include "libANGLE/renderer/d3d/d3d9/Framebuffer9.h"
+#include "libANGLE/Context.h"
#include "libANGLE/Framebuffer.h"
#include "libANGLE/FramebufferAttachment.h"
#include "libANGLE/Texture.h"
#include "libANGLE/formatutils.h"
#include "libANGLE/renderer/ContextImpl.h"
-#include "libANGLE/renderer/renderer_utils.h"
#include "libANGLE/renderer/d3d/TextureD3D.h"
-#include "libANGLE/renderer/d3d/d3d9/Renderer9.h"
#include "libANGLE/renderer/d3d/d3d9/RenderTarget9.h"
+#include "libANGLE/renderer/d3d/d3d9/Renderer9.h"
#include "libANGLE/renderer/d3d/d3d9/TextureStorage9.h"
#include "libANGLE/renderer/d3d/d3d9/formatutils9.h"
#include "libANGLE/renderer/d3d/d3d9/renderer9_utils.h"
+#include "libANGLE/renderer/renderer_utils.h"
namespace rx
{
@@ -55,17 +56,13 @@
return gl::NoError();
}
-gl::Error Framebuffer9::clearImpl(ContextImpl *context, const ClearParameters &clearParams)
+gl::Error Framebuffer9::clearImpl(const gl::Context *context, const ClearParameters &clearParams)
{
const gl::FramebufferAttachment *colorAttachment = mState.getColorAttachment(0);
const gl::FramebufferAttachment *depthStencilAttachment = mState.getDepthOrStencilAttachment();
- gl::Error error =
- mRenderer->applyRenderTarget(context, colorAttachment, depthStencilAttachment);
- if (error.isError())
- {
- return error;
- }
+ ANGLE_TRY(mRenderer->applyRenderTarget(context->getImplementation(), colorAttachment,
+ depthStencilAttachment));
const gl::State &glState = context->getGLState();
float nearZ = glState.getNearPlane();
diff --git a/src/libANGLE/renderer/d3d/d3d9/Framebuffer9.h b/src/libANGLE/renderer/d3d/d3d9/Framebuffer9.h
index 8401350..a569cb0 100644
--- a/src/libANGLE/renderer/d3d/d3d9/Framebuffer9.h
+++ b/src/libANGLE/renderer/d3d/d3d9/Framebuffer9.h
@@ -26,7 +26,7 @@
gl::Error invalidateSub(size_t count, const GLenum *attachments, const gl::Rectangle &area) override;
private:
- gl::Error clearImpl(ContextImpl *context, const ClearParameters &clearParams) override;
+ gl::Error clearImpl(const gl::Context *context, const ClearParameters &clearParams) override;
gl::Error readPixelsImpl(const gl::Rectangle &area,
GLenum format,
diff --git a/src/libANGLE/renderer/gl/BufferGL.cpp b/src/libANGLE/renderer/gl/BufferGL.cpp
index 91c8757..2a1b393 100644
--- a/src/libANGLE/renderer/gl/BufferGL.cpp
+++ b/src/libANGLE/renderer/gl/BufferGL.cpp
@@ -55,7 +55,7 @@
mBufferID = 0;
}
-gl::Error BufferGL::setData(ContextImpl * /*context*/,
+gl::Error BufferGL::setData(const gl::Context * /*context*/,
GLenum /*target*/,
const void *data,
size_t size,
@@ -82,7 +82,7 @@
return gl::NoError();
}
-gl::Error BufferGL::setSubData(ContextImpl * /*context*/,
+gl::Error BufferGL::setSubData(const gl::Context * /*context*/,
GLenum /*target*/,
const void *data,
size_t size,
@@ -99,7 +99,7 @@
return gl::NoError();
}
-gl::Error BufferGL::copySubData(ContextImpl *context,
+gl::Error BufferGL::copySubData(const gl::Context *context,
BufferImpl *source,
GLintptr sourceOffset,
GLintptr destOffset,
@@ -122,7 +122,7 @@
return gl::NoError();
}
-gl::Error BufferGL::map(ContextImpl *context, GLenum access, void **mapPtr)
+gl::Error BufferGL::map(const gl::Context *context, GLenum access, void **mapPtr)
{
if (mShadowBufferData)
{
@@ -148,7 +148,7 @@
return gl::NoError();
}
-gl::Error BufferGL::mapRange(ContextImpl *context,
+gl::Error BufferGL::mapRange(const gl::Context *context,
size_t offset,
size_t length,
GLbitfield access,
@@ -171,7 +171,7 @@
return gl::NoError();
}
-gl::Error BufferGL::unmap(ContextImpl *context, GLboolean *result)
+gl::Error BufferGL::unmap(const gl::Context *context, GLboolean *result)
{
ASSERT(result);
ASSERT(mIsMapped);
diff --git a/src/libANGLE/renderer/gl/BufferGL.h b/src/libANGLE/renderer/gl/BufferGL.h
index 2114ddb..b79d47d 100644
--- a/src/libANGLE/renderer/gl/BufferGL.h
+++ b/src/libANGLE/renderer/gl/BufferGL.h
@@ -26,28 +26,28 @@
StateManagerGL *stateManager);
~BufferGL() override;
- gl::Error setData(ContextImpl *context,
+ gl::Error setData(const gl::Context *context,
GLenum target,
const void *data,
size_t size,
GLenum usage) override;
- gl::Error setSubData(ContextImpl *context,
+ gl::Error setSubData(const gl::Context *context,
GLenum target,
const void *data,
size_t size,
size_t offset) override;
- gl::Error copySubData(ContextImpl *contextImpl,
+ gl::Error copySubData(const gl::Context *context,
BufferImpl *source,
GLintptr sourceOffset,
GLintptr destOffset,
GLsizeiptr size) override;
- gl::Error map(ContextImpl *contextImpl, GLenum access, void **mapPtr) override;
- gl::Error mapRange(ContextImpl *contextImpl,
+ gl::Error map(const gl::Context *context, GLenum access, void **mapPtr) override;
+ gl::Error mapRange(const gl::Context *context,
size_t offset,
size_t length,
GLbitfield access,
void **mapPtr) override;
- gl::Error unmap(ContextImpl *contextImpl, GLboolean *result) override;
+ gl::Error unmap(const gl::Context *context, GLboolean *result) override;
gl::Error getIndexRange(GLenum type,
size_t offset,
diff --git a/src/libANGLE/renderer/gl/ContextGL.cpp b/src/libANGLE/renderer/gl/ContextGL.cpp
index 7093caf..5641bc4 100644
--- a/src/libANGLE/renderer/gl/ContextGL.cpp
+++ b/src/libANGLE/renderer/gl/ContextGL.cpp
@@ -150,12 +150,13 @@
return mRenderer->finish();
}
-gl::Error ContextGL::drawArrays(GLenum mode, GLint first, GLsizei count)
+gl::Error ContextGL::drawArrays(const gl::Context *context, GLenum mode, GLint first, GLsizei count)
{
return mRenderer->drawArrays(mState, mode, first, count);
}
-gl::Error ContextGL::drawArraysInstanced(GLenum mode,
+gl::Error ContextGL::drawArraysInstanced(const gl::Context *context,
+ GLenum mode,
GLint first,
GLsizei count,
GLsizei instanceCount)
@@ -163,7 +164,8 @@
return mRenderer->drawArraysInstanced(mState, mode, first, count, instanceCount);
}
-gl::Error ContextGL::drawElements(GLenum mode,
+gl::Error ContextGL::drawElements(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
@@ -172,7 +174,8 @@
return mRenderer->drawElements(mState, mode, count, type, indices, indexRange);
}
-gl::Error ContextGL::drawElementsInstanced(GLenum mode,
+gl::Error ContextGL::drawElementsInstanced(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
@@ -183,7 +186,8 @@
indexRange);
}
-gl::Error ContextGL::drawRangeElements(GLenum mode,
+gl::Error ContextGL::drawRangeElements(const gl::Context *context,
+ GLenum mode,
GLuint start,
GLuint end,
GLsizei count,
@@ -194,12 +198,17 @@
return mRenderer->drawRangeElements(mState, mode, start, end, count, type, indices, indexRange);
}
-gl::Error ContextGL::drawArraysIndirect(GLenum mode, const void *indirect)
+gl::Error ContextGL::drawArraysIndirect(const gl::Context *context,
+ GLenum mode,
+ const void *indirect)
{
return mRenderer->drawArraysIndirect(mState, mode, indirect);
}
-gl::Error ContextGL::drawElementsIndirect(GLenum mode, GLenum type, const void *indirect)
+gl::Error ContextGL::drawElementsIndirect(const gl::Context *context,
+ GLenum mode,
+ GLenum type,
+ const void *indirect)
{
return mRenderer->drawElementsIndirect(mState, mode, type, indirect);
}
diff --git a/src/libANGLE/renderer/gl/ContextGL.h b/src/libANGLE/renderer/gl/ContextGL.h
index 2e8a162..8260350 100644
--- a/src/libANGLE/renderer/gl/ContextGL.h
+++ b/src/libANGLE/renderer/gl/ContextGL.h
@@ -72,32 +72,44 @@
gl::Error finish() override;
// Drawing methods.
- gl::Error drawArrays(GLenum mode, GLint first, GLsizei count) override;
- gl::Error drawArraysInstanced(GLenum mode,
+ gl::Error drawArrays(const gl::Context *context,
+ GLenum mode,
+ GLint first,
+ GLsizei count) override;
+ gl::Error drawArraysInstanced(const gl::Context *context,
+ GLenum mode,
GLint first,
GLsizei count,
GLsizei instanceCount) override;
- gl::Error drawElements(GLenum mode,
+ gl::Error drawElements(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
const gl::IndexRange &indexRange) override;
- gl::Error drawElementsInstanced(GLenum mode,
+ gl::Error drawElementsInstanced(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
GLsizei instances,
const gl::IndexRange &indexRange) override;
- gl::Error drawRangeElements(GLenum mode,
+ gl::Error drawRangeElements(const gl::Context *context,
+ GLenum mode,
GLuint start,
GLuint end,
GLsizei count,
GLenum type,
const void *indices,
const gl::IndexRange &indexRange) override;
- gl::Error drawArraysIndirect(GLenum mode, const void *indirect) override;
- gl::Error drawElementsIndirect(GLenum mode, GLenum type, const void *indirect) override;
+ gl::Error drawArraysIndirect(const gl::Context *context,
+ GLenum mode,
+ const void *indirect) override;
+ gl::Error drawElementsIndirect(const gl::Context *context,
+ GLenum mode,
+ GLenum type,
+ const void *indirect) override;
// CHROMIUM_path_rendering implementation
void stencilFillPath(const gl::Path *path, GLenum fillMode, GLuint mask) override;
diff --git a/src/libANGLE/renderer/gl/FramebufferGL.cpp b/src/libANGLE/renderer/gl/FramebufferGL.cpp
index 15f23d4..d286f8d 100644
--- a/src/libANGLE/renderer/gl/FramebufferGL.cpp
+++ b/src/libANGLE/renderer/gl/FramebufferGL.cpp
@@ -10,7 +10,7 @@
#include "common/bitset_utils.h"
#include "common/debug.h"
-#include "libANGLE/ContextState.h"
+#include "libANGLE/Context.h"
#include "libANGLE/FramebufferAttachment.h"
#include "libANGLE/State.h"
#include "libANGLE/angletypes.h"
@@ -189,7 +189,7 @@
return NoError();
}
-Error FramebufferGL::clear(ContextImpl *context, GLbitfield mask)
+Error FramebufferGL::clear(const gl::Context *context, GLbitfield mask)
{
syncClearState(context, mask);
mStateManager->bindFramebuffer(GL_FRAMEBUFFER, mFramebufferID);
@@ -198,7 +198,7 @@
return NoError();
}
-Error FramebufferGL::clearBufferfv(ContextImpl *context,
+Error FramebufferGL::clearBufferfv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLfloat *values)
@@ -210,7 +210,7 @@
return NoError();
}
-Error FramebufferGL::clearBufferuiv(ContextImpl *context,
+Error FramebufferGL::clearBufferuiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLuint *values)
@@ -222,7 +222,7 @@
return NoError();
}
-Error FramebufferGL::clearBufferiv(ContextImpl *context,
+Error FramebufferGL::clearBufferiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLint *values)
@@ -234,7 +234,7 @@
return NoError();
}
-Error FramebufferGL::clearBufferfi(ContextImpl *context,
+Error FramebufferGL::clearBufferfi(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
GLfloat depth,
@@ -261,7 +261,7 @@
return format.info->getReadPixelsType();
}
-Error FramebufferGL::readPixels(ContextImpl *context,
+Error FramebufferGL::readPixels(const gl::Context *context,
const gl::Rectangle &area,
GLenum format,
GLenum type,
@@ -305,7 +305,7 @@
return gl::NoError();
}
-Error FramebufferGL::blit(ContextImpl *context,
+Error FramebufferGL::blit(const gl::Context *context,
const gl::Rectangle &sourceArea,
const gl::Rectangle &destArea,
GLbitfield mask,
@@ -411,7 +411,7 @@
return (status == GL_FRAMEBUFFER_COMPLETE);
}
-void FramebufferGL::syncState(ContextImpl *contextImpl, const Framebuffer::DirtyBits &dirtyBits)
+void FramebufferGL::syncState(const gl::Context *context, const Framebuffer::DirtyBits &dirtyBits)
{
// Don't need to sync state for the default FBO.
if (mIsDefault)
@@ -485,7 +485,7 @@
return mIsDefault;
}
-void FramebufferGL::syncClearState(ContextImpl *context, GLbitfield mask)
+void FramebufferGL::syncClearState(const gl::Context *context, GLbitfield mask)
{
if (mFunctions->standard == STANDARD_GL_DESKTOP)
{
@@ -511,7 +511,9 @@
}
}
-void FramebufferGL::syncClearBufferState(ContextImpl *context, GLenum buffer, GLint drawBuffer)
+void FramebufferGL::syncClearBufferState(const gl::Context *context,
+ GLenum buffer,
+ GLint drawBuffer)
{
if (mFunctions->standard == STANDARD_GL_DESKTOP)
{
diff --git a/src/libANGLE/renderer/gl/FramebufferGL.h b/src/libANGLE/renderer/gl/FramebufferGL.h
index b8abb5c..3c7c3e3 100644
--- a/src/libANGLE/renderer/gl/FramebufferGL.h
+++ b/src/libANGLE/renderer/gl/FramebufferGL.h
@@ -45,20 +45,20 @@
const GLenum *attachments,
const gl::Rectangle &area) override;
- gl::Error clear(ContextImpl *context, GLbitfield mask) override;
- gl::Error clearBufferfv(ContextImpl *context,
+ gl::Error clear(const gl::Context *context, GLbitfield mask) override;
+ gl::Error clearBufferfv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLfloat *values) override;
- gl::Error clearBufferuiv(ContextImpl *context,
+ gl::Error clearBufferuiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLuint *values) override;
- gl::Error clearBufferiv(ContextImpl *context,
+ gl::Error clearBufferiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLint *values) override;
- gl::Error clearBufferfi(ContextImpl *context,
+ gl::Error clearBufferfi(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
GLfloat depth,
@@ -66,13 +66,13 @@
GLenum getImplementationColorReadFormat() const override;
GLenum getImplementationColorReadType() const override;
- gl::Error readPixels(ContextImpl *context,
+ gl::Error readPixels(const gl::Context *context,
const gl::Rectangle &area,
GLenum format,
GLenum type,
void *pixels) const override;
- gl::Error blit(ContextImpl *context,
+ gl::Error blit(const gl::Context *context,
const gl::Rectangle &sourceArea,
const gl::Rectangle &destArea,
GLbitfield mask,
@@ -82,14 +82,15 @@
bool checkStatus() const override;
- void syncState(ContextImpl *contextImpl, const gl::Framebuffer::DirtyBits &dirtyBits) override;
+ void syncState(const gl::Context *context,
+ const gl::Framebuffer::DirtyBits &dirtyBits) override;
GLuint getFramebufferID() const;
bool isDefault() const;
private:
- void syncClearState(ContextImpl *context, GLbitfield mask);
- void syncClearBufferState(ContextImpl *context, GLenum buffer, GLint drawBuffer);
+ void syncClearState(const gl::Context *context, GLbitfield mask);
+ void syncClearBufferState(const gl::Context *context, GLenum buffer, GLint drawBuffer);
bool modifyInvalidateAttachmentsForEmulatedDefaultFBO(
size_t count,
diff --git a/src/libANGLE/renderer/gl/ProgramGL.cpp b/src/libANGLE/renderer/gl/ProgramGL.cpp
index b3e5546..ccdcd5d 100644
--- a/src/libANGLE/renderer/gl/ProgramGL.cpp
+++ b/src/libANGLE/renderer/gl/ProgramGL.cpp
@@ -8,17 +8,18 @@
#include "libANGLE/renderer/gl/ProgramGL.h"
-#include "common/bitset_utils.h"
#include "common/angleutils.h"
+#include "common/bitset_utils.h"
#include "common/debug.h"
#include "common/string_utils.h"
#include "common/utilities.h"
+#include "libANGLE/Context.h"
+#include "libANGLE/Uniform.h"
#include "libANGLE/renderer/gl/ContextGL.h"
#include "libANGLE/renderer/gl/FunctionsGL.h"
#include "libANGLE/renderer/gl/ShaderGL.h"
#include "libANGLE/renderer/gl/StateManagerGL.h"
#include "libANGLE/renderer/gl/WorkaroundsGL.h"
-#include "libANGLE/Uniform.h"
#include "platform/Platform.h"
namespace rx
@@ -48,7 +49,7 @@
mProgramID = 0;
}
-LinkResult ProgramGL::load(const ContextImpl *contextImpl,
+LinkResult ProgramGL::load(const gl::Context *context,
gl::InfoLog &infoLog,
gl::BinaryInputStream *stream)
{
@@ -72,7 +73,7 @@
postLink();
// Re-apply UBO bindings to work around driver bugs.
- const WorkaroundsGL &workaroundsGL = GetAs<ContextGL>(contextImpl)->getWorkaroundsGL();
+ const WorkaroundsGL &workaroundsGL = GetImplAs<ContextGL>(context)->getWorkaroundsGL();
if (workaroundsGL.reapplyUBOBindingsAfterLoadingBinaryProgram)
{
for (size_t bindingIndex : mState.getActiveUniformBlockBindingsMask())
@@ -117,7 +118,7 @@
mFunctions->programParameteri(mProgramID, GL_PROGRAM_SEPARABLE, separable ? GL_TRUE : GL_FALSE);
}
-LinkResult ProgramGL::link(ContextImpl *contextImpl,
+LinkResult ProgramGL::link(const gl::Context *context,
const gl::VaryingPacking &packing,
gl::InfoLog &infoLog)
{
diff --git a/src/libANGLE/renderer/gl/ProgramGL.h b/src/libANGLE/renderer/gl/ProgramGL.h
index fa5a7c4..ccb08d7 100644
--- a/src/libANGLE/renderer/gl/ProgramGL.h
+++ b/src/libANGLE/renderer/gl/ProgramGL.h
@@ -31,14 +31,14 @@
bool enablePathRendering);
~ProgramGL() override;
- LinkResult load(const ContextImpl *contextImpl,
+ LinkResult load(const gl::Context *contextImpl,
gl::InfoLog &infoLog,
gl::BinaryInputStream *stream) override;
gl::Error save(gl::BinaryOutputStream *stream) override;
void setBinaryRetrievableHint(bool retrievable) override;
void setSeparable(bool separable) override;
- LinkResult link(ContextImpl *contextImpl,
+ LinkResult link(const gl::Context *contextImpl,
const gl::VaryingPacking &packing,
gl::InfoLog &infoLog) override;
GLboolean validate(const gl::Caps &caps, gl::InfoLog *infoLog) override;
diff --git a/src/libANGLE/renderer/gl/TextureGL.cpp b/src/libANGLE/renderer/gl/TextureGL.cpp
index f84a534..8bb4cb3 100644
--- a/src/libANGLE/renderer/gl/TextureGL.cpp
+++ b/src/libANGLE/renderer/gl/TextureGL.cpp
@@ -148,7 +148,7 @@
mTextureID = 0;
}
-gl::Error TextureGL::setImage(ContextImpl *contextImpl,
+gl::Error TextureGL::setImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -250,7 +250,7 @@
setImageHelper(target, level, internalFormat, size, format, type, nullptr);
}
-gl::Error TextureGL::setSubImage(ContextImpl *contextImpl,
+gl::Error TextureGL::setSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -449,7 +449,7 @@
return gl::NoError();
}
-gl::Error TextureGL::setCompressedImage(ContextImpl *contextImpl,
+gl::Error TextureGL::setCompressedImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -488,7 +488,7 @@
return gl::NoError();
}
-gl::Error TextureGL::setCompressedSubImage(ContextImpl *contextImpl,
+gl::Error TextureGL::setCompressedSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -528,7 +528,7 @@
return gl::NoError();
}
-gl::Error TextureGL::copyImage(ContextImpl *contextImpl,
+gl::Error TextureGL::copyImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Rectangle &sourceArea,
@@ -574,7 +574,7 @@
return gl::NoError();
}
-gl::Error TextureGL::copySubImage(ContextImpl *contextImpl,
+gl::Error TextureGL::copySubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
@@ -621,7 +621,7 @@
return gl::NoError();
}
-gl::Error TextureGL::copyTexture(ContextImpl *contextImpl,
+gl::Error TextureGL::copyTexture(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -645,7 +645,7 @@
unpackUnmultiplyAlpha, source);
}
-gl::Error TextureGL::copySubTexture(ContextImpl *contextImpl,
+gl::Error TextureGL::copySubTexture(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
@@ -698,7 +698,7 @@
unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
}
-gl::Error TextureGL::setStorage(ContextImpl *contextImpl,
+gl::Error TextureGL::setStorage(const gl::Context *context,
GLenum target,
size_t levels,
GLenum internalFormat,
@@ -864,7 +864,7 @@
return gl::NoError();
}
-gl::Error TextureGL::setStorageMultisample(ContextImpl *contextImpl,
+gl::Error TextureGL::setStorageMultisample(const gl::Context *context,
GLenum target,
GLsizei samples,
GLint internalFormat,
@@ -894,7 +894,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error TextureGL::generateMipmap(ContextImpl *contextImpl)
+gl::Error TextureGL::generateMipmap(const gl::Context *context)
{
mStateManager->bindTexture(getTarget(), mTextureID);
mFunctions->generateMipmap(getTarget());
diff --git a/src/libANGLE/renderer/gl/TextureGL.h b/src/libANGLE/renderer/gl/TextureGL.h
index e302f93..baf7069 100644
--- a/src/libANGLE/renderer/gl/TextureGL.h
+++ b/src/libANGLE/renderer/gl/TextureGL.h
@@ -59,7 +59,7 @@
BlitGL *blitter);
~TextureGL() override;
- gl::Error setImage(ContextImpl *contextImpl,
+ gl::Error setImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -68,7 +68,7 @@
GLenum type,
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) override;
- gl::Error setSubImage(ContextImpl *contextImpl,
+ gl::Error setSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -77,7 +77,7 @@
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) override;
- gl::Error setCompressedImage(ContextImpl *contextImpl,
+ gl::Error setCompressedImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -85,7 +85,7 @@
const gl::PixelUnpackState &unpack,
size_t imageSize,
const uint8_t *pixels) override;
- gl::Error setCompressedSubImage(ContextImpl *contextImpl,
+ gl::Error setCompressedSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -94,20 +94,20 @@
size_t imageSize,
const uint8_t *pixels) override;
- gl::Error copyImage(ContextImpl *contextImpl,
+ gl::Error copyImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Rectangle &sourceArea,
GLenum internalFormat,
const gl::Framebuffer *source) override;
- gl::Error copySubImage(ContextImpl *contextImpl,
+ gl::Error copySubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
const gl::Rectangle &sourceArea,
const gl::Framebuffer *source) override;
- gl::Error copyTexture(ContextImpl *contextImpl,
+ gl::Error copyTexture(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -117,7 +117,7 @@
bool unpackPremultiplyAlpha,
bool unpackUnmultiplyAlpha,
const gl::Texture *source) override;
- gl::Error copySubTexture(ContextImpl *contextImpl,
+ gl::Error copySubTexture(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
@@ -138,13 +138,13 @@
bool unpackUnmultiplyAlpha,
const gl::Texture *source);
- gl::Error setStorage(ContextImpl *contextImpl,
+ gl::Error setStorage(const gl::Context *context,
GLenum target,
size_t levels,
GLenum internalFormat,
const gl::Extents &size) override;
- gl::Error setStorageMultisample(ContextImpl *contextImpl,
+ gl::Error setStorageMultisample(const gl::Context *context,
GLenum target,
GLsizei samples,
GLint internalFormat,
@@ -155,7 +155,7 @@
egl::Stream *stream,
const egl::Stream::GLTextureDescription &desc) override;
- gl::Error generateMipmap(ContextImpl *contextImpl) override;
+ gl::Error generateMipmap(const gl::Context *context) override;
void bindTexImage(egl::Surface *surface) override;
void releaseTexImage() override;
diff --git a/src/libANGLE/renderer/gl/VertexArrayGL.cpp b/src/libANGLE/renderer/gl/VertexArrayGL.cpp
index e5581e3..358223b 100644
--- a/src/libANGLE/renderer/gl/VertexArrayGL.cpp
+++ b/src/libANGLE/renderer/gl/VertexArrayGL.cpp
@@ -541,7 +541,7 @@
mAppliedBindings[bindingIndex].divisor = divisor;
}
-void VertexArrayGL::syncState(ContextImpl *contextImpl, const VertexArray::DirtyBits &dirtyBits)
+void VertexArrayGL::syncState(const gl::Context *context, const VertexArray::DirtyBits &dirtyBits)
{
mStateManager->bindVertexArray(mVertexArrayID, getAppliedElementArrayBufferID());
diff --git a/src/libANGLE/renderer/gl/VertexArrayGL.h b/src/libANGLE/renderer/gl/VertexArrayGL.h
index 24b3023..d7c5578 100644
--- a/src/libANGLE/renderer/gl/VertexArrayGL.h
+++ b/src/libANGLE/renderer/gl/VertexArrayGL.h
@@ -41,7 +41,8 @@
GLuint getVertexArrayID() const;
GLuint getAppliedElementArrayBufferID() const;
- void syncState(ContextImpl *contextImpl, const gl::VertexArray::DirtyBits &dirtyBits) override;
+ void syncState(const gl::Context *context,
+ const gl::VertexArray::DirtyBits &dirtyBits) override;
private:
gl::Error syncDrawState(const gl::AttributesMask &activeAttributesMask,
diff --git a/src/libANGLE/renderer/gl/cgl/PbufferSurfaceCGL.h b/src/libANGLE/renderer/gl/cgl/PbufferSurfaceCGL.h
index f2c60dd..b23d002 100644
--- a/src/libANGLE/renderer/gl/cgl/PbufferSurfaceCGL.h
+++ b/src/libANGLE/renderer/gl/cgl/PbufferSurfaceCGL.h
@@ -29,10 +29,10 @@
const FunctionsGL *functions);
~PbufferSurfaceCGL() override;
- egl::Error initialize(const DisplayImpl *displayImpl) override;
+ egl::Error initialize(const egl::Display *display) override;
egl::Error makeCurrent() override;
- egl::Error swap(const DisplayImpl *displayImpl) override;
+ egl::Error swap(const egl::Display *display) override;
egl::Error postSubBuffer(EGLint x, EGLint y, EGLint width, EGLint height) override;
egl::Error querySurfacePointerANGLE(EGLint attribute, void **value) override;
egl::Error bindTexImage(gl::Texture *texture, EGLint buffer) override;
diff --git a/src/libANGLE/renderer/gl/cgl/PbufferSurfaceCGL.mm b/src/libANGLE/renderer/gl/cgl/PbufferSurfaceCGL.mm
index 4c3d172..aae9210 100644
--- a/src/libANGLE/renderer/gl/cgl/PbufferSurfaceCGL.mm
+++ b/src/libANGLE/renderer/gl/cgl/PbufferSurfaceCGL.mm
@@ -55,7 +55,7 @@
}
}
-egl::Error PbufferSurfaceCGL::initialize(const DisplayImpl *displayImpl)
+egl::Error PbufferSurfaceCGL::initialize(const egl::Display *display)
{
mFunctions->genRenderbuffers(1, &mColorRenderbuffer);
mStateManager->bindRenderbuffer(GL_RENDERBUFFER, mColorRenderbuffer);
@@ -80,7 +80,7 @@
return egl::Error(EGL_SUCCESS);
}
-egl::Error PbufferSurfaceCGL::swap(const DisplayImpl *displayImpl)
+egl::Error PbufferSurfaceCGL::swap(const egl::Display *display)
{
return egl::Error(EGL_SUCCESS);
}
diff --git a/src/libANGLE/renderer/gl/cgl/WindowSurfaceCGL.h b/src/libANGLE/renderer/gl/cgl/WindowSurfaceCGL.h
index 44a5bf7..ad61371 100644
--- a/src/libANGLE/renderer/gl/cgl/WindowSurfaceCGL.h
+++ b/src/libANGLE/renderer/gl/cgl/WindowSurfaceCGL.h
@@ -61,10 +61,10 @@
CGLContextObj context);
~WindowSurfaceCGL() override;
- egl::Error initialize(const DisplayImpl *displayImpl) override;
+ egl::Error initialize(const egl::Display *display) override;
egl::Error makeCurrent() override;
- egl::Error swap(const DisplayImpl *displayImpl) override;
+ egl::Error swap(const egl::Display *display) override;
egl::Error postSubBuffer(EGLint x, EGLint y, EGLint width, EGLint height) override;
egl::Error querySurfacePointerANGLE(EGLint attribute, void **value) override;
egl::Error bindTexImage(gl::Texture *texture, EGLint buffer) override;
diff --git a/src/libANGLE/renderer/gl/cgl/WindowSurfaceCGL.mm b/src/libANGLE/renderer/gl/cgl/WindowSurfaceCGL.mm
index ea87919..ef13595 100644
--- a/src/libANGLE/renderer/gl/cgl/WindowSurfaceCGL.mm
+++ b/src/libANGLE/renderer/gl/cgl/WindowSurfaceCGL.mm
@@ -194,7 +194,7 @@
}
}
-egl::Error WindowSurfaceCGL::initialize(const DisplayImpl *displayImpl)
+egl::Error WindowSurfaceCGL::initialize(const egl::Display *display)
{
unsigned width = getWidth();
unsigned height = getHeight();
@@ -237,7 +237,7 @@
return egl::Error(EGL_SUCCESS);
}
-egl::Error WindowSurfaceCGL::swap(const DisplayImpl *displayImpl)
+egl::Error WindowSurfaceCGL::swap(const egl::Display *display)
{
mFunctions->flush();
mSwapState.beingRendered->swapId = ++mCurrentSwapId;
diff --git a/src/libANGLE/renderer/gl/egl/PbufferSurfaceEGL.cpp b/src/libANGLE/renderer/gl/egl/PbufferSurfaceEGL.cpp
index 4dd6370..1911f8a 100644
--- a/src/libANGLE/renderer/gl/egl/PbufferSurfaceEGL.cpp
+++ b/src/libANGLE/renderer/gl/egl/PbufferSurfaceEGL.cpp
@@ -25,7 +25,7 @@
{
}
-egl::Error PbufferSurfaceEGL::initialize(const DisplayImpl *displayImpl)
+egl::Error PbufferSurfaceEGL::initialize(const egl::Display *display)
{
mSurface = mEGL->createPbufferSurface(mConfig, mAttribList.data());
if (mSurface == EGL_NO_SURFACE)
diff --git a/src/libANGLE/renderer/gl/egl/PbufferSurfaceEGL.h b/src/libANGLE/renderer/gl/egl/PbufferSurfaceEGL.h
index fb4fe6b..debbc7e 100644
--- a/src/libANGLE/renderer/gl/egl/PbufferSurfaceEGL.h
+++ b/src/libANGLE/renderer/gl/egl/PbufferSurfaceEGL.h
@@ -28,7 +28,7 @@
RendererGL *renderer);
~PbufferSurfaceEGL() override;
- egl::Error initialize(const DisplayImpl *displayImpl) override;
+ egl::Error initialize(const egl::Display *display) override;
};
} // namespace rx
diff --git a/src/libANGLE/renderer/gl/egl/SurfaceEGL.cpp b/src/libANGLE/renderer/gl/egl/SurfaceEGL.cpp
index 364def9..b5e7654 100644
--- a/src/libANGLE/renderer/gl/egl/SurfaceEGL.cpp
+++ b/src/libANGLE/renderer/gl/egl/SurfaceEGL.cpp
@@ -47,7 +47,7 @@
return egl::Error(EGL_SUCCESS);
}
-egl::Error SurfaceEGL::swap(const DisplayImpl *displayImpl)
+egl::Error SurfaceEGL::swap(const egl::Display *display)
{
EGLBoolean success = mEGL->swapBuffers(mSurface);
if (success == EGL_FALSE)
diff --git a/src/libANGLE/renderer/gl/egl/SurfaceEGL.h b/src/libANGLE/renderer/gl/egl/SurfaceEGL.h
index 6033ace..f2dcadb 100644
--- a/src/libANGLE/renderer/gl/egl/SurfaceEGL.h
+++ b/src/libANGLE/renderer/gl/egl/SurfaceEGL.h
@@ -29,7 +29,7 @@
~SurfaceEGL() override;
egl::Error makeCurrent() override;
- egl::Error swap(const DisplayImpl *displayImpl) override;
+ egl::Error swap(const egl::Display *display) override;
egl::Error postSubBuffer(EGLint x, EGLint y, EGLint width, EGLint height) override;
egl::Error querySurfacePointerANGLE(EGLint attribute, void **value) override;
egl::Error bindTexImage(gl::Texture *texture, EGLint buffer) override;
diff --git a/src/libANGLE/renderer/gl/egl/WindowSurfaceEGL.cpp b/src/libANGLE/renderer/gl/egl/WindowSurfaceEGL.cpp
index c4d3853..0bf73d3 100644
--- a/src/libANGLE/renderer/gl/egl/WindowSurfaceEGL.cpp
+++ b/src/libANGLE/renderer/gl/egl/WindowSurfaceEGL.cpp
@@ -26,7 +26,7 @@
{
}
-egl::Error WindowSurfaceEGL::initialize(const DisplayImpl *displayImpl)
+egl::Error WindowSurfaceEGL::initialize(const egl::Display *display)
{
mSurface = mEGL->createWindowSurface(mConfig, mWindow, mAttribList.data());
if (mSurface == EGL_NO_SURFACE)
diff --git a/src/libANGLE/renderer/gl/egl/WindowSurfaceEGL.h b/src/libANGLE/renderer/gl/egl/WindowSurfaceEGL.h
index 51f8945..8a8bc69 100644
--- a/src/libANGLE/renderer/gl/egl/WindowSurfaceEGL.h
+++ b/src/libANGLE/renderer/gl/egl/WindowSurfaceEGL.h
@@ -26,7 +26,7 @@
RendererGL *renderer);
~WindowSurfaceEGL() override;
- egl::Error initialize(const DisplayImpl *displayImpl) override;
+ egl::Error initialize(const egl::Display *display) override;
private:
EGLNativeWindowType mWindow;
diff --git a/src/libANGLE/renderer/gl/egl/ozone/SurfaceOzone.cpp b/src/libANGLE/renderer/gl/egl/ozone/SurfaceOzone.cpp
index f1b056c..b41dfc5 100644
--- a/src/libANGLE/renderer/gl/egl/ozone/SurfaceOzone.cpp
+++ b/src/libANGLE/renderer/gl/egl/ozone/SurfaceOzone.cpp
@@ -26,7 +26,7 @@
delete mBuffer;
}
-egl::Error SurfaceOzone::initialize(const DisplayImpl *displayImpl)
+egl::Error SurfaceOzone::initialize(const egl::Display *display)
{
return egl::Error(EGL_SUCCESS);
}
@@ -41,7 +41,7 @@
return egl::Error(EGL_SUCCESS);
}
-egl::Error SurfaceOzone::swap(const DisplayImpl *displayImpl)
+egl::Error SurfaceOzone::swap(const egl::Display *display)
{
mBuffer->present();
return egl::Error(EGL_SUCCESS);
diff --git a/src/libANGLE/renderer/gl/egl/ozone/SurfaceOzone.h b/src/libANGLE/renderer/gl/egl/ozone/SurfaceOzone.h
index 918b72b..e4dd4bc 100644
--- a/src/libANGLE/renderer/gl/egl/ozone/SurfaceOzone.h
+++ b/src/libANGLE/renderer/gl/egl/ozone/SurfaceOzone.h
@@ -25,10 +25,10 @@
FramebufferImpl *createDefaultFramebuffer(const gl::FramebufferState &state) override;
- egl::Error initialize(const DisplayImpl *displayImpl) override;
+ egl::Error initialize(const egl::Display *display) override;
egl::Error makeCurrent() override;
- egl::Error swap(const DisplayImpl *displayImpl) override;
+ egl::Error swap(const egl::Display *display) override;
egl::Error postSubBuffer(EGLint x, EGLint y, EGLint width, EGLint height) override;
egl::Error querySurfacePointerANGLE(EGLint attribute, void **value) override;
egl::Error bindTexImage(gl::Texture *texture, EGLint buffer) override;
diff --git a/src/libANGLE/renderer/gl/glx/PbufferSurfaceGLX.cpp b/src/libANGLE/renderer/gl/glx/PbufferSurfaceGLX.cpp
index 57e2283..5ada764a 100644
--- a/src/libANGLE/renderer/gl/glx/PbufferSurfaceGLX.cpp
+++ b/src/libANGLE/renderer/gl/glx/PbufferSurfaceGLX.cpp
@@ -42,7 +42,7 @@
}
}
-egl::Error PbufferSurfaceGLX::initialize(const DisplayImpl *displayImpl)
+egl::Error PbufferSurfaceGLX::initialize(const egl::Display *display)
{
// Avoid creating 0-sized PBuffers as it fails on the Intel Mesa driver
// as commented on https://bugs.freedesktop.org/show_bug.cgi?id=38869 so we
@@ -82,7 +82,7 @@
return egl::Error(EGL_SUCCESS);
}
-egl::Error PbufferSurfaceGLX::swap(const DisplayImpl *displayImpl)
+egl::Error PbufferSurfaceGLX::swap(const egl::Display *display)
{
return egl::Error(EGL_SUCCESS);
}
diff --git a/src/libANGLE/renderer/gl/glx/PbufferSurfaceGLX.h b/src/libANGLE/renderer/gl/glx/PbufferSurfaceGLX.h
index cf390e5..557cfa1 100644
--- a/src/libANGLE/renderer/gl/glx/PbufferSurfaceGLX.h
+++ b/src/libANGLE/renderer/gl/glx/PbufferSurfaceGLX.h
@@ -30,10 +30,10 @@
glx::FBConfig fbConfig);
~PbufferSurfaceGLX() override;
- egl::Error initialize(const DisplayImpl *displayImpl) override;
+ egl::Error initialize(const egl::Display *display) override;
egl::Error makeCurrent() override;
- egl::Error swap(const DisplayImpl *displayImpl) override;
+ egl::Error swap(const egl::Display *display) override;
egl::Error postSubBuffer(EGLint x, EGLint y, EGLint width, EGLint height) override;
egl::Error querySurfacePointerANGLE(EGLint attribute, void **value) override;
egl::Error bindTexImage(gl::Texture *texture, EGLint buffer) override;
diff --git a/src/libANGLE/renderer/gl/glx/WindowSurfaceGLX.cpp b/src/libANGLE/renderer/gl/glx/WindowSurfaceGLX.cpp
index c357f9d..9472cc4 100644
--- a/src/libANGLE/renderer/gl/glx/WindowSurfaceGLX.cpp
+++ b/src/libANGLE/renderer/gl/glx/WindowSurfaceGLX.cpp
@@ -63,7 +63,7 @@
mGLXDisplay->syncXCommands();
}
-egl::Error WindowSurfaceGLX::initialize(const DisplayImpl *displayImpl)
+egl::Error WindowSurfaceGLX::initialize(const egl::Display *display)
{
// Check that the window's visual ID is valid, as part of the AMGLE_x11_visual
// extension.
@@ -141,7 +141,7 @@
return egl::Error(EGL_SUCCESS);
}
-egl::Error WindowSurfaceGLX::swap(const DisplayImpl *displayImpl)
+egl::Error WindowSurfaceGLX::swap(const egl::Display *display)
{
// We need to swap before resizing as some drivers clobber the back buffer
// when the window is resized.
diff --git a/src/libANGLE/renderer/gl/glx/WindowSurfaceGLX.h b/src/libANGLE/renderer/gl/glx/WindowSurfaceGLX.h
index 00515cc..77d1117 100644
--- a/src/libANGLE/renderer/gl/glx/WindowSurfaceGLX.h
+++ b/src/libANGLE/renderer/gl/glx/WindowSurfaceGLX.h
@@ -32,10 +32,10 @@
glx::FBConfig fbConfig);
~WindowSurfaceGLX() override;
- egl::Error initialize(const DisplayImpl *displayImpl) override;
+ egl::Error initialize(const egl::Display *display) override;
egl::Error makeCurrent() override;
- egl::Error swap(const DisplayImpl *displayImpl) override;
+ egl::Error swap(const egl::Display *display) override;
egl::Error postSubBuffer(EGLint x, EGLint y, EGLint width, EGLint height) override;
egl::Error querySurfacePointerANGLE(EGLint attribute, void **value) override;
egl::Error bindTexImage(gl::Texture *texture, EGLint buffer) override;
diff --git a/src/libANGLE/renderer/gl/wgl/D3DTextureSurfaceWGL.cpp b/src/libANGLE/renderer/gl/wgl/D3DTextureSurfaceWGL.cpp
index b60f981..b3f68ed 100644
--- a/src/libANGLE/renderer/gl/wgl/D3DTextureSurfaceWGL.cpp
+++ b/src/libANGLE/renderer/gl/wgl/D3DTextureSurfaceWGL.cpp
@@ -287,7 +287,7 @@
nullptr);
}
-egl::Error D3DTextureSurfaceWGL::initialize(const DisplayImpl *displayImpl)
+egl::Error D3DTextureSurfaceWGL::initialize(const egl::Display *display)
{
IUnknown *device = nullptr;
ANGLE_TRY(GetD3DTextureInfo(mBuftype, mClientBuffer, mDisplayD3D11Device, &mWidth, &mHeight,
@@ -372,7 +372,7 @@
return egl::Error(EGL_SUCCESS);
}
-egl::Error D3DTextureSurfaceWGL::swap(const DisplayImpl *displayImpl)
+egl::Error D3DTextureSurfaceWGL::swap(const egl::Display *display)
{
return egl::Error(EGL_SUCCESS);
}
diff --git a/src/libANGLE/renderer/gl/wgl/D3DTextureSurfaceWGL.h b/src/libANGLE/renderer/gl/wgl/D3DTextureSurfaceWGL.h
index 2ce2b05..2896b1c 100644
--- a/src/libANGLE/renderer/gl/wgl/D3DTextureSurfaceWGL.h
+++ b/src/libANGLE/renderer/gl/wgl/D3DTextureSurfaceWGL.h
@@ -41,11 +41,11 @@
EGLClientBuffer clientBuffer,
ID3D11Device *d3d11Device);
- egl::Error initialize(const DisplayImpl *displayImpl) override;
+ egl::Error initialize(const egl::Display *display) override;
egl::Error makeCurrent() override;
egl::Error unMakeCurrent() override;
- egl::Error swap(const DisplayImpl *displayImpl) override;
+ egl::Error swap(const egl::Display *display) override;
egl::Error postSubBuffer(EGLint x, EGLint y, EGLint width, EGLint height) override;
egl::Error querySurfacePointerANGLE(EGLint attribute, void **value) override;
egl::Error bindTexImage(gl::Texture *texture, EGLint buffer) override;
diff --git a/src/libANGLE/renderer/gl/wgl/DXGISwapChainWindowSurfaceWGL.cpp b/src/libANGLE/renderer/gl/wgl/DXGISwapChainWindowSurfaceWGL.cpp
index 068ea99..6eaa488 100644
--- a/src/libANGLE/renderer/gl/wgl/DXGISwapChainWindowSurfaceWGL.cpp
+++ b/src/libANGLE/renderer/gl/wgl/DXGISwapChainWindowSurfaceWGL.cpp
@@ -86,7 +86,7 @@
SafeRelease(mSwapChain1);
}
-egl::Error DXGISwapChainWindowSurfaceWGL::initialize(const DisplayImpl *displayImpl)
+egl::Error DXGISwapChainWindowSurfaceWGL::initialize(const egl::Display *display)
{
if (mOrientation != EGL_SURFACE_ORIENTATION_INVERT_Y_ANGLE)
{
@@ -128,24 +128,16 @@
return egl::Error(EGL_SUCCESS);
}
-egl::Error DXGISwapChainWindowSurfaceWGL::swap(const DisplayImpl *displayImpl)
+egl::Error DXGISwapChainWindowSurfaceWGL::swap(const egl::Display *display)
{
mFunctionsGL->flush();
- egl::Error error = setObjectsLocked(false);
- if (error.isError())
- {
- return error;
- }
+ ANGLE_TRY(setObjectsLocked(false));
HRESULT result = mSwapChain->Present(mSwapInterval, 0);
mFirstSwap = false;
- error = setObjectsLocked(true);
- if (error.isError())
- {
- return error;
- }
+ ANGLE_TRY(setObjectsLocked(true));
if (FAILED(result))
{
@@ -164,11 +156,7 @@
mFunctionsGL->flush();
- egl::Error error = setObjectsLocked(false);
- if (error.isError())
- {
- return error;
- }
+ ANGLE_TRY(setObjectsLocked(false));
HRESULT result = S_OK;
if (mFirstSwap)
@@ -184,11 +172,7 @@
result = mSwapChain1->Present1(mSwapInterval, 0, ¶ms);
}
- error = setObjectsLocked(true);
- if (error.isError())
- {
- return error;
- }
+ ANGLE_TRY(setObjectsLocked(true));
if (FAILED(result))
{
diff --git a/src/libANGLE/renderer/gl/wgl/DXGISwapChainWindowSurfaceWGL.h b/src/libANGLE/renderer/gl/wgl/DXGISwapChainWindowSurfaceWGL.h
index a4c34a7..6d706b3 100644
--- a/src/libANGLE/renderer/gl/wgl/DXGISwapChainWindowSurfaceWGL.h
+++ b/src/libANGLE/renderer/gl/wgl/DXGISwapChainWindowSurfaceWGL.h
@@ -38,10 +38,10 @@
EGLint orientation);
~DXGISwapChainWindowSurfaceWGL() override;
- egl::Error initialize(const DisplayImpl *displayImpl) override;
+ egl::Error initialize(const egl::Display *display) override;
egl::Error makeCurrent() override;
- egl::Error swap(const DisplayImpl *displayImpl) override;
+ egl::Error swap(const egl::Display *display) override;
egl::Error postSubBuffer(EGLint x, EGLint y, EGLint width, EGLint height) override;
egl::Error querySurfacePointerANGLE(EGLint attribute, void **value) override;
egl::Error bindTexImage(gl::Texture *texture, EGLint buffer) override;
diff --git a/src/libANGLE/renderer/gl/wgl/PbufferSurfaceWGL.cpp b/src/libANGLE/renderer/gl/wgl/PbufferSurfaceWGL.cpp
index 0650e91..1d49e1a 100644
--- a/src/libANGLE/renderer/gl/wgl/PbufferSurfaceWGL.cpp
+++ b/src/libANGLE/renderer/gl/wgl/PbufferSurfaceWGL.cpp
@@ -72,7 +72,7 @@
}
}
-egl::Error PbufferSurfaceWGL::initialize(const DisplayImpl *displayImpl)
+egl::Error PbufferSurfaceWGL::initialize(const egl::Display *display)
{
const int pbufferCreationAttributes[] =
{
@@ -122,7 +122,7 @@
return egl::Error(EGL_SUCCESS);
}
-egl::Error PbufferSurfaceWGL::swap(const DisplayImpl *displayImpl)
+egl::Error PbufferSurfaceWGL::swap(const egl::Display *display)
{
return egl::Error(EGL_SUCCESS);
}
diff --git a/src/libANGLE/renderer/gl/wgl/PbufferSurfaceWGL.h b/src/libANGLE/renderer/gl/wgl/PbufferSurfaceWGL.h
index aed4279..488800c 100644
--- a/src/libANGLE/renderer/gl/wgl/PbufferSurfaceWGL.h
+++ b/src/libANGLE/renderer/gl/wgl/PbufferSurfaceWGL.h
@@ -34,10 +34,10 @@
const FunctionsWGL *functions);
~PbufferSurfaceWGL() override;
- egl::Error initialize(const DisplayImpl *displayImpl) override;
+ egl::Error initialize(const egl::Display *display) override;
egl::Error makeCurrent() override;
- egl::Error swap(const DisplayImpl *displayImpl) override;
+ egl::Error swap(const egl::Display *display) override;
egl::Error postSubBuffer(EGLint x, EGLint y, EGLint width, EGLint height) override;
egl::Error querySurfacePointerANGLE(EGLint attribute, void **value) override;
egl::Error bindTexImage(gl::Texture *texture, EGLint buffer) override;
diff --git a/src/libANGLE/renderer/gl/wgl/WindowSurfaceWGL.cpp b/src/libANGLE/renderer/gl/wgl/WindowSurfaceWGL.cpp
index b686547..eed964b 100644
--- a/src/libANGLE/renderer/gl/wgl/WindowSurfaceWGL.cpp
+++ b/src/libANGLE/renderer/gl/wgl/WindowSurfaceWGL.cpp
@@ -41,7 +41,7 @@
mDeviceContext = nullptr;
}
-egl::Error WindowSurfaceWGL::initialize(const DisplayImpl *displayImpl)
+egl::Error WindowSurfaceWGL::initialize(const egl::Display *display)
{
mDeviceContext = GetDC(mWindow);
if (!mDeviceContext)
@@ -100,7 +100,7 @@
return egl::Error(EGL_SUCCESS);
}
-egl::Error WindowSurfaceWGL::swap(const DisplayImpl *displayImpl)
+egl::Error WindowSurfaceWGL::swap(const egl::Display *display)
{
if (!mFunctionsWGL->swapBuffers(mDeviceContext))
{
diff --git a/src/libANGLE/renderer/gl/wgl/WindowSurfaceWGL.h b/src/libANGLE/renderer/gl/wgl/WindowSurfaceWGL.h
index 981ef41..4eebbd9 100644
--- a/src/libANGLE/renderer/gl/wgl/WindowSurfaceWGL.h
+++ b/src/libANGLE/renderer/gl/wgl/WindowSurfaceWGL.h
@@ -30,10 +30,10 @@
EGLint orientation);
~WindowSurfaceWGL() override;
- egl::Error initialize(const DisplayImpl *displayImpl) override;
+ egl::Error initialize(const egl::Display *display) override;
egl::Error makeCurrent() override;
- egl::Error swap(const DisplayImpl *displayImpl) override;
+ egl::Error swap(const egl::Display *display) override;
egl::Error postSubBuffer(EGLint x, EGLint y, EGLint width, EGLint height) override;
egl::Error querySurfacePointerANGLE(EGLint attribute, void **value) override;
egl::Error bindTexImage(gl::Texture *texture, EGLint buffer) override;
diff --git a/src/libANGLE/renderer/null/BufferNULL.cpp b/src/libANGLE/renderer/null/BufferNULL.cpp
index 0c5300d..97c6a59 100644
--- a/src/libANGLE/renderer/null/BufferNULL.cpp
+++ b/src/libANGLE/renderer/null/BufferNULL.cpp
@@ -29,7 +29,7 @@
ASSERT(memoryReleaseResult);
}
-gl::Error BufferNULL::setData(ContextImpl *context,
+gl::Error BufferNULL::setData(const gl::Context *context,
GLenum target,
const void *data,
size_t size,
@@ -48,7 +48,7 @@
return gl::NoError();
}
-gl::Error BufferNULL::setSubData(ContextImpl *context,
+gl::Error BufferNULL::setSubData(const gl::Context *context,
GLenum target,
const void *data,
size_t size,
@@ -61,7 +61,7 @@
return gl::NoError();
}
-gl::Error BufferNULL::copySubData(ContextImpl *context,
+gl::Error BufferNULL::copySubData(const gl::Context *context,
BufferImpl *source,
GLintptr sourceOffset,
GLintptr destOffset,
@@ -75,13 +75,13 @@
return gl::NoError();
}
-gl::Error BufferNULL::map(ContextImpl *context, GLenum access, void **mapPtr)
+gl::Error BufferNULL::map(const gl::Context *context, GLenum access, void **mapPtr)
{
*mapPtr = mData.data();
return gl::NoError();
}
-gl::Error BufferNULL::mapRange(ContextImpl *context,
+gl::Error BufferNULL::mapRange(const gl::Context *context,
size_t offset,
size_t length,
GLbitfield access,
@@ -91,7 +91,7 @@
return gl::NoError();
}
-gl::Error BufferNULL::unmap(ContextImpl *context, GLboolean *result)
+gl::Error BufferNULL::unmap(const gl::Context *context, GLboolean *result)
{
*result = GL_TRUE;
return gl::NoError();
diff --git a/src/libANGLE/renderer/null/BufferNULL.h b/src/libANGLE/renderer/null/BufferNULL.h
index 6ba23cd..b8fa163 100644
--- a/src/libANGLE/renderer/null/BufferNULL.h
+++ b/src/libANGLE/renderer/null/BufferNULL.h
@@ -23,28 +23,28 @@
BufferNULL(const gl::BufferState &state, AllocationTrackerNULL *allocationTracker);
~BufferNULL() override;
- gl::Error setData(ContextImpl *context,
+ gl::Error setData(const gl::Context *context,
GLenum target,
const void *data,
size_t size,
GLenum usage) override;
- gl::Error setSubData(ContextImpl *context,
+ gl::Error setSubData(const gl::Context *context,
GLenum target,
const void *data,
size_t size,
size_t offset) override;
- gl::Error copySubData(ContextImpl *contextImpl,
+ gl::Error copySubData(const gl::Context *context,
BufferImpl *source,
GLintptr sourceOffset,
GLintptr destOffset,
GLsizeiptr size) override;
- gl::Error map(ContextImpl *contextImpl, GLenum access, void **mapPtr) override;
- gl::Error mapRange(ContextImpl *contextImpl,
+ gl::Error map(const gl::Context *context, GLenum access, void **mapPtr) override;
+ gl::Error mapRange(const gl::Context *context,
size_t offset,
size_t length,
GLbitfield access,
void **mapPtr) override;
- gl::Error unmap(ContextImpl *contextImpl, GLboolean *result) override;
+ gl::Error unmap(const gl::Context *context, GLboolean *result) override;
gl::Error getIndexRange(GLenum type,
size_t offset,
diff --git a/src/libANGLE/renderer/null/ContextNULL.cpp b/src/libANGLE/renderer/null/ContextNULL.cpp
index 4532541..58c06a0 100644
--- a/src/libANGLE/renderer/null/ContextNULL.cpp
+++ b/src/libANGLE/renderer/null/ContextNULL.cpp
@@ -92,12 +92,16 @@
return gl::NoError();
}
-gl::Error ContextNULL::drawArrays(GLenum mode, GLint first, GLsizei count)
+gl::Error ContextNULL::drawArrays(const gl::Context *context,
+ GLenum mode,
+ GLint first,
+ GLsizei count)
{
return gl::NoError();
}
-gl::Error ContextNULL::drawArraysInstanced(GLenum mode,
+gl::Error ContextNULL::drawArraysInstanced(const gl::Context *context,
+ GLenum mode,
GLint first,
GLsizei count,
GLsizei instanceCount)
@@ -105,7 +109,8 @@
return gl::NoError();
}
-gl::Error ContextNULL::drawElements(GLenum mode,
+gl::Error ContextNULL::drawElements(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
@@ -114,7 +119,8 @@
return gl::NoError();
}
-gl::Error ContextNULL::drawElementsInstanced(GLenum mode,
+gl::Error ContextNULL::drawElementsInstanced(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
@@ -124,7 +130,8 @@
return gl::NoError();
}
-gl::Error ContextNULL::drawRangeElements(GLenum mode,
+gl::Error ContextNULL::drawRangeElements(const gl::Context *context,
+ GLenum mode,
GLuint start,
GLuint end,
GLsizei count,
@@ -135,12 +142,17 @@
return gl::NoError();
}
-gl::Error ContextNULL::drawArraysIndirect(GLenum mode, const void *indirect)
+gl::Error ContextNULL::drawArraysIndirect(const gl::Context *context,
+ GLenum mode,
+ const void *indirect)
{
return gl::NoError();
}
-gl::Error ContextNULL::drawElementsIndirect(GLenum mode, GLenum type, const void *indirect)
+gl::Error ContextNULL::drawElementsIndirect(const gl::Context *context,
+ GLenum mode,
+ GLenum type,
+ const void *indirect)
{
return gl::NoError();
}
diff --git a/src/libANGLE/renderer/null/ContextNULL.h b/src/libANGLE/renderer/null/ContextNULL.h
index 0da4880..3070c9e 100644
--- a/src/libANGLE/renderer/null/ContextNULL.h
+++ b/src/libANGLE/renderer/null/ContextNULL.h
@@ -43,32 +43,44 @@
gl::Error finish() override;
// Drawing methods.
- gl::Error drawArrays(GLenum mode, GLint first, GLsizei count) override;
- gl::Error drawArraysInstanced(GLenum mode,
+ gl::Error drawArrays(const gl::Context *context,
+ GLenum mode,
+ GLint first,
+ GLsizei count) override;
+ gl::Error drawArraysInstanced(const gl::Context *context,
+ GLenum mode,
GLint first,
GLsizei count,
GLsizei instanceCount) override;
- gl::Error drawElements(GLenum mode,
+ gl::Error drawElements(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
const gl::IndexRange &indexRange) override;
- gl::Error drawElementsInstanced(GLenum mode,
+ gl::Error drawElementsInstanced(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
GLsizei instances,
const gl::IndexRange &indexRange) override;
- gl::Error drawRangeElements(GLenum mode,
+ gl::Error drawRangeElements(const gl::Context *context,
+ GLenum mode,
GLuint start,
GLuint end,
GLsizei count,
GLenum type,
const void *indices,
const gl::IndexRange &indexRange) override;
- gl::Error drawArraysIndirect(GLenum mode, const void *indirect) override;
- gl::Error drawElementsIndirect(GLenum mode, GLenum type, const void *indirect) override;
+ gl::Error drawArraysIndirect(const gl::Context *context,
+ GLenum mode,
+ const void *indirect) override;
+ gl::Error drawElementsIndirect(const gl::Context *context,
+ GLenum mode,
+ GLenum type,
+ const void *indirect) override;
// CHROMIUM_path_rendering path drawing methods.
void stencilFillPath(const gl::Path *path, GLenum fillMode, GLuint mask) override;
diff --git a/src/libANGLE/renderer/null/FramebufferNULL.cpp b/src/libANGLE/renderer/null/FramebufferNULL.cpp
index 4744fa7..eb02b95 100644
--- a/src/libANGLE/renderer/null/FramebufferNULL.cpp
+++ b/src/libANGLE/renderer/null/FramebufferNULL.cpp
@@ -41,12 +41,12 @@
return gl::NoError();
}
-gl::Error FramebufferNULL::clear(ContextImpl *context, GLbitfield mask)
+gl::Error FramebufferNULL::clear(const gl::Context *context, GLbitfield mask)
{
return gl::NoError();
}
-gl::Error FramebufferNULL::clearBufferfv(ContextImpl *context,
+gl::Error FramebufferNULL::clearBufferfv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLfloat *values)
@@ -54,7 +54,7 @@
return gl::NoError();
}
-gl::Error FramebufferNULL::clearBufferuiv(ContextImpl *context,
+gl::Error FramebufferNULL::clearBufferuiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLuint *values)
@@ -62,7 +62,7 @@
return gl::NoError();
}
-gl::Error FramebufferNULL::clearBufferiv(ContextImpl *context,
+gl::Error FramebufferNULL::clearBufferiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLint *values)
@@ -70,7 +70,7 @@
return gl::NoError();
}
-gl::Error FramebufferNULL::clearBufferfi(ContextImpl *context,
+gl::Error FramebufferNULL::clearBufferfi(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
GLfloat depth,
@@ -105,7 +105,7 @@
return format.info->getReadPixelsType();
}
-gl::Error FramebufferNULL::readPixels(ContextImpl *context,
+gl::Error FramebufferNULL::readPixels(const gl::Context *context,
const gl::Rectangle &area,
GLenum format,
GLenum type,
@@ -114,7 +114,7 @@
return gl::NoError();
}
-gl::Error FramebufferNULL::blit(ContextImpl *context,
+gl::Error FramebufferNULL::blit(const gl::Context *context,
const gl::Rectangle &sourceArea,
const gl::Rectangle &destArea,
GLbitfield mask,
@@ -128,7 +128,7 @@
return true;
}
-void FramebufferNULL::syncState(ContextImpl *contextImpl,
+void FramebufferNULL::syncState(const gl::Context *context,
const gl::Framebuffer::DirtyBits &dirtyBits)
{
}
diff --git a/src/libANGLE/renderer/null/FramebufferNULL.h b/src/libANGLE/renderer/null/FramebufferNULL.h
index 93756d7..9451487 100644
--- a/src/libANGLE/renderer/null/FramebufferNULL.h
+++ b/src/libANGLE/renderer/null/FramebufferNULL.h
@@ -27,20 +27,20 @@
const GLenum *attachments,
const gl::Rectangle &area) override;
- gl::Error clear(ContextImpl *context, GLbitfield mask) override;
- gl::Error clearBufferfv(ContextImpl *context,
+ gl::Error clear(const gl::Context *context, GLbitfield mask) override;
+ gl::Error clearBufferfv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLfloat *values) override;
- gl::Error clearBufferuiv(ContextImpl *context,
+ gl::Error clearBufferuiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLuint *values) override;
- gl::Error clearBufferiv(ContextImpl *context,
+ gl::Error clearBufferiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLint *values) override;
- gl::Error clearBufferfi(ContextImpl *context,
+ gl::Error clearBufferfi(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
GLfloat depth,
@@ -48,13 +48,13 @@
GLenum getImplementationColorReadFormat() const override;
GLenum getImplementationColorReadType() const override;
- gl::Error readPixels(ContextImpl *context,
+ gl::Error readPixels(const gl::Context *context,
const gl::Rectangle &area,
GLenum format,
GLenum type,
void *pixels) const override;
- gl::Error blit(ContextImpl *context,
+ gl::Error blit(const gl::Context *context,
const gl::Rectangle &sourceArea,
const gl::Rectangle &destArea,
GLbitfield mask,
@@ -62,7 +62,8 @@
bool checkStatus() const override;
- void syncState(ContextImpl *contextImpl, const gl::Framebuffer::DirtyBits &dirtyBits) override;
+ void syncState(const gl::Context *context,
+ const gl::Framebuffer::DirtyBits &dirtyBits) override;
gl::Error getSamplePosition(size_t index, GLfloat *xy) const override;
};
diff --git a/src/libANGLE/renderer/null/ProgramNULL.cpp b/src/libANGLE/renderer/null/ProgramNULL.cpp
index 35bd46d..d46608c 100644
--- a/src/libANGLE/renderer/null/ProgramNULL.cpp
+++ b/src/libANGLE/renderer/null/ProgramNULL.cpp
@@ -22,7 +22,7 @@
{
}
-LinkResult ProgramNULL::load(const ContextImpl *contextImpl,
+LinkResult ProgramNULL::load(const gl::Context *contextImpl,
gl::InfoLog &infoLog,
gl::BinaryInputStream *stream)
{
@@ -42,7 +42,7 @@
{
}
-LinkResult ProgramNULL::link(ContextImpl *contextImpl,
+LinkResult ProgramNULL::link(const gl::Context *contextImpl,
const gl::VaryingPacking &packing,
gl::InfoLog &infoLog)
{
diff --git a/src/libANGLE/renderer/null/ProgramNULL.h b/src/libANGLE/renderer/null/ProgramNULL.h
index 88c0598..b6e1e63 100644
--- a/src/libANGLE/renderer/null/ProgramNULL.h
+++ b/src/libANGLE/renderer/null/ProgramNULL.h
@@ -21,14 +21,14 @@
ProgramNULL(const gl::ProgramState &state);
~ProgramNULL() override;
- LinkResult load(const ContextImpl *contextImpl,
+ LinkResult load(const gl::Context *context,
gl::InfoLog &infoLog,
gl::BinaryInputStream *stream) override;
gl::Error save(gl::BinaryOutputStream *stream) override;
void setBinaryRetrievableHint(bool retrievable) override;
void setSeparable(bool separable) override;
- LinkResult link(ContextImpl *contextImpl,
+ LinkResult link(const gl::Context *context,
const gl::VaryingPacking &packing,
gl::InfoLog &infoLog) override;
GLboolean validate(const gl::Caps &caps, gl::InfoLog *infoLog) override;
diff --git a/src/libANGLE/renderer/null/SurfaceNULL.cpp b/src/libANGLE/renderer/null/SurfaceNULL.cpp
index 868269b..0e11c3e 100644
--- a/src/libANGLE/renderer/null/SurfaceNULL.cpp
+++ b/src/libANGLE/renderer/null/SurfaceNULL.cpp
@@ -24,7 +24,7 @@
{
}
-egl::Error SurfaceNULL::initialize(const DisplayImpl *displayImpl)
+egl::Error SurfaceNULL::initialize(const egl::Display *display)
{
return egl::NoError();
}
@@ -34,7 +34,7 @@
return new FramebufferNULL(state);
}
-egl::Error SurfaceNULL::swap(const DisplayImpl *displayImpl)
+egl::Error SurfaceNULL::swap(const egl::Display *display)
{
return egl::NoError();
}
diff --git a/src/libANGLE/renderer/null/SurfaceNULL.h b/src/libANGLE/renderer/null/SurfaceNULL.h
index 4b084a3..f67e357 100644
--- a/src/libANGLE/renderer/null/SurfaceNULL.h
+++ b/src/libANGLE/renderer/null/SurfaceNULL.h
@@ -21,9 +21,9 @@
SurfaceNULL(const egl::SurfaceState &surfaceState);
~SurfaceNULL() override;
- egl::Error initialize(const DisplayImpl *displayImpl) override;
+ egl::Error initialize(const egl::Display *display) override;
FramebufferImpl *createDefaultFramebuffer(const gl::FramebufferState &state) override;
- egl::Error swap(const DisplayImpl *displayImpl) override;
+ egl::Error swap(const egl::Display *display) override;
egl::Error postSubBuffer(EGLint x, EGLint y, EGLint width, EGLint height) override;
egl::Error querySurfacePointerANGLE(EGLint attribute, void **value) override;
egl::Error bindTexImage(gl::Texture *texture, EGLint buffer) override;
diff --git a/src/libANGLE/renderer/null/TextureNULL.cpp b/src/libANGLE/renderer/null/TextureNULL.cpp
index 16ef4cc..a21ad9e 100644
--- a/src/libANGLE/renderer/null/TextureNULL.cpp
+++ b/src/libANGLE/renderer/null/TextureNULL.cpp
@@ -22,7 +22,7 @@
{
}
-gl::Error TextureNULL::setImage(ContextImpl *contextImpl,
+gl::Error TextureNULL::setImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -37,7 +37,7 @@
return gl::NoError();
}
-gl::Error TextureNULL::setSubImage(ContextImpl *contextImpl,
+gl::Error TextureNULL::setSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -49,7 +49,7 @@
return gl::NoError();
}
-gl::Error TextureNULL::setCompressedImage(ContextImpl *contextImpl,
+gl::Error TextureNULL::setCompressedImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -61,7 +61,7 @@
return gl::NoError();
}
-gl::Error TextureNULL::setCompressedSubImage(ContextImpl *contextImpl,
+gl::Error TextureNULL::setCompressedSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -73,7 +73,7 @@
return gl::NoError();
}
-gl::Error TextureNULL::copyImage(ContextImpl *contextImpl,
+gl::Error TextureNULL::copyImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Rectangle &sourceArea,
@@ -83,7 +83,7 @@
return gl::NoError();
}
-gl::Error TextureNULL::copySubImage(ContextImpl *contextImpl,
+gl::Error TextureNULL::copySubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
@@ -93,7 +93,7 @@
return gl::NoError();
}
-gl::Error TextureNULL::setStorage(ContextImpl *contextImpl,
+gl::Error TextureNULL::setStorage(const gl::Context *context,
GLenum target,
size_t levels,
GLenum internalFormat,
@@ -114,7 +114,7 @@
return gl::NoError();
}
-gl::Error TextureNULL::generateMipmap(ContextImpl *contextImpl)
+gl::Error TextureNULL::generateMipmap(const gl::Context *context)
{
return gl::NoError();
}
@@ -135,7 +135,7 @@
{
}
-gl::Error TextureNULL::setStorageMultisample(ContextImpl *contextImpl,
+gl::Error TextureNULL::setStorageMultisample(const gl::Context *context,
GLenum target,
GLsizei samples,
GLint internalformat,
diff --git a/src/libANGLE/renderer/null/TextureNULL.h b/src/libANGLE/renderer/null/TextureNULL.h
index c529090..a7e2752 100644
--- a/src/libANGLE/renderer/null/TextureNULL.h
+++ b/src/libANGLE/renderer/null/TextureNULL.h
@@ -21,7 +21,7 @@
TextureNULL(const gl::TextureState &state);
~TextureNULL() override;
- gl::Error setImage(ContextImpl *contextImpl,
+ gl::Error setImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -30,7 +30,7 @@
GLenum type,
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) override;
- gl::Error setSubImage(ContextImpl *contextImpl,
+ gl::Error setSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -39,7 +39,7 @@
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) override;
- gl::Error setCompressedImage(ContextImpl *contextImpl,
+ gl::Error setCompressedImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -47,7 +47,7 @@
const gl::PixelUnpackState &unpack,
size_t imageSize,
const uint8_t *pixels) override;
- gl::Error setCompressedSubImage(ContextImpl *contextImpl,
+ gl::Error setCompressedSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -56,20 +56,20 @@
size_t imageSize,
const uint8_t *pixels) override;
- gl::Error copyImage(ContextImpl *contextImpl,
+ gl::Error copyImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Rectangle &sourceArea,
GLenum internalFormat,
const gl::Framebuffer *source) override;
- gl::Error copySubImage(ContextImpl *contextImpl,
+ gl::Error copySubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
const gl::Rectangle &sourceArea,
const gl::Framebuffer *source) override;
- gl::Error setStorage(ContextImpl *contextImpl,
+ gl::Error setStorage(const gl::Context *context,
GLenum target,
size_t levels,
GLenum internalFormat,
@@ -81,7 +81,7 @@
egl::Stream *stream,
const egl::Stream::GLTextureDescription &desc) override;
- gl::Error generateMipmap(ContextImpl *contextImpl) override;
+ gl::Error generateMipmap(const gl::Context *context) override;
void setBaseLevel(GLuint baseLevel) override;
@@ -90,7 +90,7 @@
void syncState(const gl::Texture::DirtyBits &dirtyBits) override;
- gl::Error setStorageMultisample(ContextImpl *contextImpl,
+ gl::Error setStorageMultisample(const gl::Context *context,
GLenum target,
GLsizei samples,
GLint internalformat,
diff --git a/src/libANGLE/renderer/vulkan/BufferVk.cpp b/src/libANGLE/renderer/vulkan/BufferVk.cpp
index bdfa32c..2f102aa 100644
--- a/src/libANGLE/renderer/vulkan/BufferVk.cpp
+++ b/src/libANGLE/renderer/vulkan/BufferVk.cpp
@@ -10,6 +10,7 @@
#include "libANGLE/renderer/vulkan/BufferVk.h"
#include "common/debug.h"
+#include "libANGLE/Context.h"
#include "libANGLE/renderer/vulkan/ContextVk.h"
#include "libANGLE/renderer/vulkan/RendererVk.h"
@@ -24,20 +25,20 @@
{
}
-void BufferVk::destroy(ContextImpl *contextImpl)
+void BufferVk::destroy(const gl::Context *context)
{
- VkDevice device = GetAs<ContextVk>(contextImpl)->getDevice();
+ VkDevice device = GetImplAs<ContextVk>(context)->getDevice();
mBuffer.destroy(device);
}
-gl::Error BufferVk::setData(ContextImpl *context,
+gl::Error BufferVk::setData(const gl::Context *context,
GLenum target,
const void *data,
size_t size,
GLenum usage)
{
- ContextVk *contextVk = GetAs<ContextVk>(context);
+ ContextVk *contextVk = GetImplAs<ContextVk>(context);
auto device = contextVk->getDevice();
// TODO(jmadill): Proper usage bit implementation. Likely will involve multiple backing buffers
@@ -93,7 +94,7 @@
return gl::NoError();
}
-gl::Error BufferVk::setSubData(ContextImpl *context,
+gl::Error BufferVk::setSubData(const gl::Context *context,
GLenum target,
const void *data,
size_t size,
@@ -102,14 +103,14 @@
ASSERT(mBuffer.getHandle() != VK_NULL_HANDLE);
ASSERT(mBuffer.getMemory().getHandle() != VK_NULL_HANDLE);
- VkDevice device = GetAs<ContextVk>(context)->getDevice();
+ VkDevice device = GetImplAs<ContextVk>(context)->getDevice();
ANGLE_TRY(setDataImpl(device, static_cast<const uint8_t *>(data), size, offset));
return gl::NoError();
}
-gl::Error BufferVk::copySubData(ContextImpl *context,
+gl::Error BufferVk::copySubData(const gl::Context *context,
BufferImpl *source,
GLintptr sourceOffset,
GLintptr destOffset,
@@ -119,12 +120,12 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error BufferVk::map(ContextImpl *context, GLenum access, void **mapPtr)
+gl::Error BufferVk::map(const gl::Context *context, GLenum access, void **mapPtr)
{
ASSERT(mBuffer.getHandle() != VK_NULL_HANDLE);
ASSERT(mBuffer.getMemory().getHandle() != VK_NULL_HANDLE);
- VkDevice device = GetAs<ContextVk>(context)->getDevice();
+ VkDevice device = GetImplAs<ContextVk>(context)->getDevice();
ANGLE_TRY(mBuffer.getMemory().map(device, 0, mState.getSize(), 0,
reinterpret_cast<uint8_t **>(mapPtr)));
@@ -132,7 +133,7 @@
return gl::NoError();
}
-gl::Error BufferVk::mapRange(ContextImpl *context,
+gl::Error BufferVk::mapRange(const gl::Context *context,
size_t offset,
size_t length,
GLbitfield access,
@@ -141,7 +142,7 @@
ASSERT(mBuffer.getHandle() != VK_NULL_HANDLE);
ASSERT(mBuffer.getMemory().getHandle() != VK_NULL_HANDLE);
- VkDevice device = GetAs<ContextVk>(context)->getDevice();
+ VkDevice device = GetImplAs<ContextVk>(context)->getDevice();
ANGLE_TRY(
mBuffer.getMemory().map(device, offset, length, 0, reinterpret_cast<uint8_t **>(mapPtr)));
@@ -149,12 +150,12 @@
return gl::NoError();
}
-gl::Error BufferVk::unmap(ContextImpl *context, GLboolean *result)
+gl::Error BufferVk::unmap(const gl::Context *context, GLboolean *result)
{
ASSERT(mBuffer.getHandle() != VK_NULL_HANDLE);
ASSERT(mBuffer.getMemory().getHandle() != VK_NULL_HANDLE);
- VkDevice device = GetAs<ContextVk>(context)->getDevice();
+ VkDevice device = GetImplAs<ContextVk>(context)->getDevice();
mBuffer.getMemory().unmap(device);
diff --git a/src/libANGLE/renderer/vulkan/BufferVk.h b/src/libANGLE/renderer/vulkan/BufferVk.h
index 410b500..bd08621 100644
--- a/src/libANGLE/renderer/vulkan/BufferVk.h
+++ b/src/libANGLE/renderer/vulkan/BufferVk.h
@@ -21,30 +21,30 @@
public:
BufferVk(const gl::BufferState &state);
~BufferVk() override;
- void destroy(ContextImpl *contextImpl) override;
+ void destroy(const gl::Context *context) override;
- gl::Error setData(ContextImpl *context,
+ gl::Error setData(const gl::Context *context,
GLenum target,
const void *data,
size_t size,
GLenum usage) override;
- gl::Error setSubData(ContextImpl *context,
+ gl::Error setSubData(const gl::Context *context,
GLenum target,
const void *data,
size_t size,
size_t offset) override;
- gl::Error copySubData(ContextImpl *contextImpl,
+ gl::Error copySubData(const gl::Context *context,
BufferImpl *source,
GLintptr sourceOffset,
GLintptr destOffset,
GLsizeiptr size) override;
- gl::Error map(ContextImpl *contextImpl, GLenum access, void **mapPtr) override;
- gl::Error mapRange(ContextImpl *contextImpl,
+ gl::Error map(const gl::Context *context, GLenum access, void **mapPtr) override;
+ gl::Error mapRange(const gl::Context *context,
size_t offset,
size_t length,
GLbitfield access,
void **mapPtr) override;
- gl::Error unmap(ContextImpl *contextImpl, GLboolean *result) override;
+ gl::Error unmap(const gl::Context *context, GLboolean *result) override;
gl::Error getIndexRange(GLenum type,
size_t offset,
diff --git a/src/libANGLE/renderer/vulkan/ContextVk.cpp b/src/libANGLE/renderer/vulkan/ContextVk.cpp
index 2a2c699..ed7b4a9 100644
--- a/src/libANGLE/renderer/vulkan/ContextVk.cpp
+++ b/src/libANGLE/renderer/vulkan/ContextVk.cpp
@@ -264,7 +264,7 @@
return gl::NoError();
}
-gl::Error ContextVk::drawArrays(GLenum mode, GLint first, GLsizei count)
+gl::Error ContextVk::drawArrays(const gl::Context *context, GLenum mode, GLint first, GLsizei count)
{
if (mode != mCurrentDrawMode)
{
@@ -326,7 +326,8 @@
return gl::NoError();
}
-gl::Error ContextVk::drawArraysInstanced(GLenum mode,
+gl::Error ContextVk::drawArraysInstanced(const gl::Context *context,
+ GLenum mode,
GLint first,
GLsizei count,
GLsizei instanceCount)
@@ -335,7 +336,8 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error ContextVk::drawElements(GLenum mode,
+gl::Error ContextVk::drawElements(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
@@ -345,7 +347,8 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error ContextVk::drawElementsInstanced(GLenum mode,
+gl::Error ContextVk::drawElementsInstanced(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
@@ -356,7 +359,8 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error ContextVk::drawRangeElements(GLenum mode,
+gl::Error ContextVk::drawRangeElements(const gl::Context *context,
+ GLenum mode,
GLuint start,
GLuint end,
GLsizei count,
@@ -384,13 +388,18 @@
return vk::NoError();
}
-gl::Error ContextVk::drawArraysIndirect(GLenum mode, const void *indirect)
+gl::Error ContextVk::drawArraysIndirect(const gl::Context *context,
+ GLenum mode,
+ const void *indirect)
{
UNIMPLEMENTED();
return gl::InternalError() << "DrawArraysIndirect hasn't been implemented for vulkan backend.";
}
-gl::Error ContextVk::drawElementsIndirect(GLenum mode, GLenum type, const void *indirect)
+gl::Error ContextVk::drawElementsIndirect(const gl::Context *context,
+ GLenum mode,
+ GLenum type,
+ const void *indirect)
{
UNIMPLEMENTED();
return gl::InternalError()
diff --git a/src/libANGLE/renderer/vulkan/ContextVk.h b/src/libANGLE/renderer/vulkan/ContextVk.h
index 07d0810..fb3ba55 100644
--- a/src/libANGLE/renderer/vulkan/ContextVk.h
+++ b/src/libANGLE/renderer/vulkan/ContextVk.h
@@ -32,32 +32,44 @@
gl::Error finish() override;
// Drawing methods.
- gl::Error drawArrays(GLenum mode, GLint first, GLsizei count) override;
- gl::Error drawArraysInstanced(GLenum mode,
+ gl::Error drawArrays(const gl::Context *context,
+ GLenum mode,
+ GLint first,
+ GLsizei count) override;
+ gl::Error drawArraysInstanced(const gl::Context *context,
+ GLenum mode,
GLint first,
GLsizei count,
GLsizei instanceCount) override;
- gl::Error drawElements(GLenum mode,
+ gl::Error drawElements(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
const gl::IndexRange &indexRange) override;
- gl::Error drawElementsInstanced(GLenum mode,
+ gl::Error drawElementsInstanced(const gl::Context *context,
+ GLenum mode,
GLsizei count,
GLenum type,
const void *indices,
GLsizei instances,
const gl::IndexRange &indexRange) override;
- gl::Error drawRangeElements(GLenum mode,
+ gl::Error drawRangeElements(const gl::Context *context,
+ GLenum mode,
GLuint start,
GLuint end,
GLsizei count,
GLenum type,
const void *indices,
const gl::IndexRange &indexRange) override;
- gl::Error drawArraysIndirect(GLenum mode, const void *indirect) override;
- gl::Error drawElementsIndirect(GLenum mode, GLenum type, const void *indirect) override;
+ gl::Error drawArraysIndirect(const gl::Context *context,
+ GLenum mode,
+ const void *indirect) override;
+ gl::Error drawElementsIndirect(const gl::Context *context,
+ GLenum mode,
+ GLenum type,
+ const void *indirect) override;
// Device loss
GLenum getResetStatus() override;
diff --git a/src/libANGLE/renderer/vulkan/FramebufferVk.cpp b/src/libANGLE/renderer/vulkan/FramebufferVk.cpp
index 84b8907..b7adc97 100644
--- a/src/libANGLE/renderer/vulkan/FramebufferVk.cpp
+++ b/src/libANGLE/renderer/vulkan/FramebufferVk.cpp
@@ -14,6 +14,8 @@
#include "common/debug.h"
#include "image_util/imageformats.h"
+#include "libANGLE/Context.h"
+#include "libANGLE/Display.h"
#include "libANGLE/formatutils.h"
#include "libANGLE/renderer/renderer_utils.h"
#include "libANGLE/renderer/vulkan/ContextVk.h"
@@ -91,17 +93,17 @@
{
}
-void FramebufferVk::destroy(ContextImpl *contextImpl)
+void FramebufferVk::destroy(const gl::Context *context)
{
- VkDevice device = GetAs<ContextVk>(contextImpl)->getDevice();
+ VkDevice device = GetImplAs<ContextVk>(context)->getDevice();
mRenderPass.destroy(device);
mFramebuffer.destroy(device);
}
-void FramebufferVk::destroyDefault(DisplayImpl *displayImpl)
+void FramebufferVk::destroyDefault(const egl::Display *display)
{
- VkDevice device = GetAs<DisplayVk>(displayImpl)->getRenderer()->getDevice();
+ VkDevice device = GetImplAs<DisplayVk>(display)->getRenderer()->getDevice();
mRenderPass.destroy(device);
mFramebuffer.destroy(device);
@@ -127,9 +129,9 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error FramebufferVk::clear(ContextImpl *context, GLbitfield mask)
+gl::Error FramebufferVk::clear(const gl::Context *context, GLbitfield mask)
{
- ContextVk *contextVk = GetAs<ContextVk>(context);
+ ContextVk *contextVk = GetImplAs<ContextVk>(context);
if (mState.getDepthAttachment() && (mask & GL_DEPTH_BUFFER_BIT) != 0)
{
@@ -180,7 +182,7 @@
return gl::NoError();
}
-gl::Error FramebufferVk::clearBufferfv(ContextImpl *context,
+gl::Error FramebufferVk::clearBufferfv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLfloat *values)
@@ -189,7 +191,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error FramebufferVk::clearBufferuiv(ContextImpl *context,
+gl::Error FramebufferVk::clearBufferuiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLuint *values)
@@ -198,7 +200,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error FramebufferVk::clearBufferiv(ContextImpl *context,
+gl::Error FramebufferVk::clearBufferiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLint *values)
@@ -207,7 +209,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error FramebufferVk::clearBufferfi(ContextImpl *context,
+gl::Error FramebufferVk::clearBufferfi(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
GLfloat depth,
@@ -245,7 +247,7 @@
return errOrResult.getResult()->type;
}
-gl::Error FramebufferVk::readPixels(ContextImpl *context,
+gl::Error FramebufferVk::readPixels(const gl::Context *context,
const gl::Rectangle &area,
GLenum format,
GLenum type,
@@ -258,7 +260,7 @@
RenderTargetVk *renderTarget = nullptr;
ANGLE_TRY(readAttachment->getRenderTarget(&renderTarget));
- ContextVk *contextVk = GetAs<ContextVk>(context);
+ ContextVk *contextVk = GetImplAs<ContextVk>(context);
RendererVk *renderer = contextVk->getRenderer();
VkDevice device = renderer->getDevice();
@@ -318,7 +320,7 @@
return vk::NoError();
}
-gl::Error FramebufferVk::blit(ContextImpl *context,
+gl::Error FramebufferVk::blit(const gl::Context *context,
const gl::Rectangle &sourceArea,
const gl::Rectangle &destArea,
GLbitfield mask,
@@ -334,9 +336,10 @@
return bool();
}
-void FramebufferVk::syncState(ContextImpl *contextImpl, const gl::Framebuffer::DirtyBits &dirtyBits)
+void FramebufferVk::syncState(const gl::Context *context,
+ const gl::Framebuffer::DirtyBits &dirtyBits)
{
- auto contextVk = GetAs<ContextVk>(contextImpl);
+ auto contextVk = GetImplAs<ContextVk>(context);
ASSERT(dirtyBits.any());
diff --git a/src/libANGLE/renderer/vulkan/FramebufferVk.h b/src/libANGLE/renderer/vulkan/FramebufferVk.h
index b28ffbd..01926b5 100644
--- a/src/libANGLE/renderer/vulkan/FramebufferVk.h
+++ b/src/libANGLE/renderer/vulkan/FramebufferVk.h
@@ -31,8 +31,8 @@
WindowSurfaceVk *backbuffer);
~FramebufferVk() override;
- void destroy(ContextImpl *contextImpl) override;
- void destroyDefault(DisplayImpl *displayImpl) override;
+ void destroy(const gl::Context *context) override;
+ void destroyDefault(const egl::Display *display) override;
gl::Error discard(size_t count, const GLenum *attachments) override;
gl::Error invalidate(size_t count, const GLenum *attachments) override;
@@ -40,20 +40,20 @@
const GLenum *attachments,
const gl::Rectangle &area) override;
- gl::Error clear(ContextImpl *context, GLbitfield mask) override;
- gl::Error clearBufferfv(ContextImpl *context,
+ gl::Error clear(const gl::Context *context, GLbitfield mask) override;
+ gl::Error clearBufferfv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLfloat *values) override;
- gl::Error clearBufferuiv(ContextImpl *context,
+ gl::Error clearBufferuiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLuint *values) override;
- gl::Error clearBufferiv(ContextImpl *context,
+ gl::Error clearBufferiv(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
const GLint *values) override;
- gl::Error clearBufferfi(ContextImpl *context,
+ gl::Error clearBufferfi(const gl::Context *context,
GLenum buffer,
GLint drawbuffer,
GLfloat depth,
@@ -61,13 +61,13 @@
GLenum getImplementationColorReadFormat() const override;
GLenum getImplementationColorReadType() const override;
- gl::Error readPixels(ContextImpl *context,
+ gl::Error readPixels(const gl::Context *context,
const gl::Rectangle &area,
GLenum format,
GLenum type,
void *pixels) const override;
- gl::Error blit(ContextImpl *context,
+ gl::Error blit(const gl::Context *context,
const gl::Rectangle &sourceArea,
const gl::Rectangle &destArea,
GLbitfield mask,
@@ -75,7 +75,8 @@
bool checkStatus() const override;
- void syncState(ContextImpl *contextImpl, const gl::Framebuffer::DirtyBits &dirtyBits) override;
+ void syncState(const gl::Context *context,
+ const gl::Framebuffer::DirtyBits &dirtyBits) override;
gl::Error getSamplePosition(size_t index, GLfloat *xy) const override;
diff --git a/src/libANGLE/renderer/vulkan/ProgramVk.cpp b/src/libANGLE/renderer/vulkan/ProgramVk.cpp
index 6e53883..b5e63da 100644
--- a/src/libANGLE/renderer/vulkan/ProgramVk.cpp
+++ b/src/libANGLE/renderer/vulkan/ProgramVk.cpp
@@ -10,6 +10,7 @@
#include "libANGLE/renderer/vulkan/ProgramVk.h"
#include "common/debug.h"
+#include "libANGLE/Context.h"
#include "libANGLE/renderer/vulkan/ContextVk.h"
#include "libANGLE/renderer/vulkan/GlslangWrapper.h"
#include "libANGLE/renderer/vulkan/RendererVk.h"
@@ -25,16 +26,16 @@
{
}
-void ProgramVk::destroy(const ContextImpl *contextImpl)
+void ProgramVk::destroy(const gl::Context *contextImpl)
{
- VkDevice device = GetAs<ContextVk>(contextImpl)->getDevice();
+ VkDevice device = GetImplAs<ContextVk>(contextImpl)->getDevice();
mLinkedFragmentModule.destroy(device);
mLinkedVertexModule.destroy(device);
mPipelineLayout.destroy(device);
}
-LinkResult ProgramVk::load(const ContextImpl *contextImpl,
+LinkResult ProgramVk::load(const gl::Context *contextImpl,
gl::InfoLog &infoLog,
gl::BinaryInputStream *stream)
{
@@ -58,11 +59,11 @@
UNIMPLEMENTED();
}
-LinkResult ProgramVk::link(ContextImpl *contextImpl,
+LinkResult ProgramVk::link(const gl::Context *glContext,
const gl::VaryingPacking &packing,
gl::InfoLog &infoLog)
{
- ContextVk *context = GetAs<ContextVk>(contextImpl);
+ ContextVk *context = GetImplAs<ContextVk>(glContext);
RendererVk *renderer = context->getRenderer();
GlslangWrapper *glslangWrapper = renderer->getGlslangWrapper();
diff --git a/src/libANGLE/renderer/vulkan/ProgramVk.h b/src/libANGLE/renderer/vulkan/ProgramVk.h
index ff8efc5..82e9c92 100644
--- a/src/libANGLE/renderer/vulkan/ProgramVk.h
+++ b/src/libANGLE/renderer/vulkan/ProgramVk.h
@@ -21,16 +21,16 @@
public:
ProgramVk(const gl::ProgramState &state);
~ProgramVk() override;
- void destroy(const ContextImpl *contextImpl) override;
+ void destroy(const gl::Context *context) override;
- LinkResult load(const ContextImpl *contextImpl,
+ LinkResult load(const gl::Context *context,
gl::InfoLog &infoLog,
gl::BinaryInputStream *stream) override;
gl::Error save(gl::BinaryOutputStream *stream) override;
void setBinaryRetrievableHint(bool retrievable) override;
void setSeparable(bool separable) override;
- LinkResult link(ContextImpl *contextImpl,
+ LinkResult link(const gl::Context *context,
const gl::VaryingPacking &packing,
gl::InfoLog &infoLog) override;
GLboolean validate(const gl::Caps &caps, gl::InfoLog *infoLog) override;
diff --git a/src/libANGLE/renderer/vulkan/SurfaceVk.cpp b/src/libANGLE/renderer/vulkan/SurfaceVk.cpp
index d98f4fe..e0e173f 100644
--- a/src/libANGLE/renderer/vulkan/SurfaceVk.cpp
+++ b/src/libANGLE/renderer/vulkan/SurfaceVk.cpp
@@ -10,6 +10,7 @@
#include "libANGLE/renderer/vulkan/SurfaceVk.h"
#include "common/debug.h"
+#include "libANGLE/Display.h"
#include "libANGLE/Surface.h"
#include "libANGLE/renderer/vulkan/DisplayVk.h"
#include "libANGLE/renderer/vulkan/FramebufferVk.h"
@@ -65,7 +66,7 @@
{
}
-egl::Error OffscreenSurfaceVk::initialize(const DisplayImpl *displayImpl)
+egl::Error OffscreenSurfaceVk::initialize(const egl::Display *display)
{
return egl::Error(EGL_SUCCESS);
}
@@ -76,7 +77,7 @@
return FramebufferVk::CreateUserFBO(state);
}
-egl::Error OffscreenSurfaceVk::swap(const DisplayImpl *displayImpl)
+egl::Error OffscreenSurfaceVk::swap(const egl::Display *display)
{
return egl::Error(EGL_SUCCESS);
}
@@ -170,9 +171,9 @@
ASSERT(mSwapchain == VK_NULL_HANDLE);
}
-void WindowSurfaceVk::destroy(const DisplayImpl *displayImpl)
+void WindowSurfaceVk::destroy(const egl::Display *display)
{
- const DisplayVk *displayVk = GetAs<DisplayVk>(displayImpl);
+ const DisplayVk *displayVk = GetImplAs<DisplayVk>(display);
RendererVk *rendererVk = displayVk->getRenderer();
VkDevice device = rendererVk->getDevice();
VkInstance instance = rendererVk->getInstance();
@@ -211,9 +212,9 @@
}
}
-egl::Error WindowSurfaceVk::initialize(const DisplayImpl *displayImpl)
+egl::Error WindowSurfaceVk::initialize(const egl::Display *display)
{
- const DisplayVk *displayVk = GetAs<DisplayVk>(displayImpl);
+ const DisplayVk *displayVk = GetImplAs<DisplayVk>(display);
return initializeImpl(displayVk->getRenderer()).toEGL(EGL_BAD_SURFACE);
}
@@ -413,9 +414,9 @@
return FramebufferVk::CreateDefaultFBO(state, this);
}
-egl::Error WindowSurfaceVk::swap(const DisplayImpl *displayImpl)
+egl::Error WindowSurfaceVk::swap(const egl::Display *display)
{
- const DisplayVk *displayVk = GetAs<DisplayVk>(displayImpl);
+ const DisplayVk *displayVk = GetImplAs<DisplayVk>(display);
return swapImpl(displayVk->getRenderer()).toEGL(EGL_BAD_ALLOC);
}
diff --git a/src/libANGLE/renderer/vulkan/SurfaceVk.h b/src/libANGLE/renderer/vulkan/SurfaceVk.h
index e42696b..018e8ab 100644
--- a/src/libANGLE/renderer/vulkan/SurfaceVk.h
+++ b/src/libANGLE/renderer/vulkan/SurfaceVk.h
@@ -26,9 +26,9 @@
OffscreenSurfaceVk(const egl::SurfaceState &surfaceState, EGLint width, EGLint height);
~OffscreenSurfaceVk() override;
- egl::Error initialize(const DisplayImpl *displayImpl) override;
+ egl::Error initialize(const egl::Display *display) override;
FramebufferImpl *createDefaultFramebuffer(const gl::FramebufferState &state) override;
- egl::Error swap(const DisplayImpl *displayImpl) override;
+ egl::Error swap(const egl::Display *display) override;
egl::Error postSubBuffer(EGLint x, EGLint y, EGLint width, EGLint height) override;
egl::Error querySurfacePointerANGLE(EGLint attribute, void **value) override;
egl::Error bindTexImage(gl::Texture *texture, EGLint buffer) override;
@@ -61,11 +61,11 @@
EGLint height);
~WindowSurfaceVk() override;
- void destroy(const DisplayImpl *contextImpl) override;
+ void destroy(const egl::Display *display) override;
- egl::Error initialize(const DisplayImpl *displayImpl) override;
+ egl::Error initialize(const egl::Display *display) override;
FramebufferImpl *createDefaultFramebuffer(const gl::FramebufferState &state) override;
- egl::Error swap(const DisplayImpl *displayImpl) override;
+ egl::Error swap(const egl::Display *display) override;
egl::Error postSubBuffer(EGLint x, EGLint y, EGLint width, EGLint height) override;
egl::Error querySurfacePointerANGLE(EGLint attribute, void **value) override;
egl::Error bindTexImage(gl::Texture *texture, EGLint buffer) override;
diff --git a/src/libANGLE/renderer/vulkan/TextureVk.cpp b/src/libANGLE/renderer/vulkan/TextureVk.cpp
index 7c3bf4b..16d7bb4 100644
--- a/src/libANGLE/renderer/vulkan/TextureVk.cpp
+++ b/src/libANGLE/renderer/vulkan/TextureVk.cpp
@@ -22,7 +22,7 @@
{
}
-gl::Error TextureVk::setImage(ContextImpl *contextImpl,
+gl::Error TextureVk::setImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -36,7 +36,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error TextureVk::setSubImage(ContextImpl *contextImpl,
+gl::Error TextureVk::setSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -49,7 +49,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error TextureVk::setCompressedImage(ContextImpl *contextImpl,
+gl::Error TextureVk::setCompressedImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -62,7 +62,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error TextureVk::setCompressedSubImage(ContextImpl *contextImpl,
+gl::Error TextureVk::setCompressedSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -75,7 +75,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error TextureVk::copyImage(ContextImpl *contextImpl,
+gl::Error TextureVk::copyImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Rectangle &sourceArea,
@@ -86,7 +86,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error TextureVk::copySubImage(ContextImpl *contextImpl,
+gl::Error TextureVk::copySubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
@@ -97,7 +97,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error TextureVk::setStorage(ContextImpl *contextImpl,
+gl::Error TextureVk::setStorage(const gl::Context *context,
GLenum target,
size_t levels,
GLenum internalFormat,
@@ -121,7 +121,7 @@
return gl::Error(GL_INVALID_OPERATION);
}
-gl::Error TextureVk::generateMipmap(ContextImpl *contextImpl)
+gl::Error TextureVk::generateMipmap(const gl::Context *context)
{
UNIMPLEMENTED();
return gl::Error(GL_INVALID_OPERATION);
@@ -155,7 +155,7 @@
UNIMPLEMENTED();
}
-gl::Error TextureVk::setStorageMultisample(ContextImpl *contextImpl,
+gl::Error TextureVk::setStorageMultisample(const gl::Context *context,
GLenum target,
GLsizei samples,
GLint internalformat,
diff --git a/src/libANGLE/renderer/vulkan/TextureVk.h b/src/libANGLE/renderer/vulkan/TextureVk.h
index 4ad6a30..d50854e 100644
--- a/src/libANGLE/renderer/vulkan/TextureVk.h
+++ b/src/libANGLE/renderer/vulkan/TextureVk.h
@@ -21,7 +21,7 @@
TextureVk(const gl::TextureState &state);
~TextureVk() override;
- gl::Error setImage(ContextImpl *contextImpl,
+ gl::Error setImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -30,7 +30,7 @@
GLenum type,
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) override;
- gl::Error setSubImage(ContextImpl *contextImpl,
+ gl::Error setSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -39,7 +39,7 @@
const gl::PixelUnpackState &unpack,
const uint8_t *pixels) override;
- gl::Error setCompressedImage(ContextImpl *contextImpl,
+ gl::Error setCompressedImage(const gl::Context *context,
GLenum target,
size_t level,
GLenum internalFormat,
@@ -47,7 +47,7 @@
const gl::PixelUnpackState &unpack,
size_t imageSize,
const uint8_t *pixels) override;
- gl::Error setCompressedSubImage(ContextImpl *contextImpl,
+ gl::Error setCompressedSubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Box &area,
@@ -56,20 +56,20 @@
size_t imageSize,
const uint8_t *pixels) override;
- gl::Error copyImage(ContextImpl *contextImpl,
+ gl::Error copyImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Rectangle &sourceArea,
GLenum internalFormat,
const gl::Framebuffer *source) override;
- gl::Error copySubImage(ContextImpl *contextImpl,
+ gl::Error copySubImage(const gl::Context *context,
GLenum target,
size_t level,
const gl::Offset &destOffset,
const gl::Rectangle &sourceArea,
const gl::Framebuffer *source) override;
- gl::Error setStorage(ContextImpl *contextImpl,
+ gl::Error setStorage(const gl::Context *context,
GLenum target,
size_t levels,
GLenum internalFormat,
@@ -81,7 +81,7 @@
egl::Stream *stream,
const egl::Stream::GLTextureDescription &desc) override;
- gl::Error generateMipmap(ContextImpl *contextImpl) override;
+ gl::Error generateMipmap(const gl::Context *context) override;
void setBaseLevel(GLuint baseLevel) override;
@@ -94,7 +94,7 @@
void syncState(const gl::Texture::DirtyBits &dirtyBits) override;
- gl::Error setStorageMultisample(ContextImpl *contextImpl,
+ gl::Error setStorageMultisample(const gl::Context *context,
GLenum target,
GLsizei samples,
GLint internalformat,
diff --git a/src/libANGLE/renderer/vulkan/VertexArrayVk.cpp b/src/libANGLE/renderer/vulkan/VertexArrayVk.cpp
index e835be7..0aabb4a 100644
--- a/src/libANGLE/renderer/vulkan/VertexArrayVk.cpp
+++ b/src/libANGLE/renderer/vulkan/VertexArrayVk.cpp
@@ -11,6 +11,7 @@
#include "common/debug.h"
+#include "libANGLE/Context.h"
#include "libANGLE/renderer/vulkan/ContextVk.h"
namespace rx
@@ -24,12 +25,13 @@
{
}
-void VertexArrayVk::syncState(ContextImpl *contextImpl, const gl::VertexArray::DirtyBits &dirtyBits)
+void VertexArrayVk::syncState(const gl::Context *context,
+ const gl::VertexArray::DirtyBits &dirtyBits)
{
ASSERT(dirtyBits.any());
// TODO(jmadill): Use pipeline cache.
- auto contextVk = GetAs<ContextVk>(contextImpl);
+ auto contextVk = GetImplAs<ContextVk>(context);
contextVk->invalidateCurrentPipeline();
}
diff --git a/src/libANGLE/renderer/vulkan/VertexArrayVk.h b/src/libANGLE/renderer/vulkan/VertexArrayVk.h
index 7592bc0..63f9ffa 100644
--- a/src/libANGLE/renderer/vulkan/VertexArrayVk.h
+++ b/src/libANGLE/renderer/vulkan/VertexArrayVk.h
@@ -21,7 +21,8 @@
VertexArrayVk(const gl::VertexArrayState &data);
~VertexArrayVk() override;
- void syncState(ContextImpl *contextImpl, const gl::VertexArray::DirtyBits &dirtyBits) override;
+ void syncState(const gl::Context *context,
+ const gl::VertexArray::DirtyBits &dirtyBits) override;
};
} // namespace rx
diff --git a/src/tests/perf_tests/IndexDataManagerTest.cpp b/src/tests/perf_tests/IndexDataManagerTest.cpp
index 8a37ece..a42fcba 100644
--- a/src/tests/perf_tests/IndexDataManagerTest.cpp
+++ b/src/tests/perf_tests/IndexDataManagerTest.cpp
@@ -78,7 +78,7 @@
MockBufferD3D(rx::BufferFactoryD3D *factory) : BufferD3D(mockState, factory), mData() {}
// BufferImpl
- gl::Error setData(rx::ContextImpl *context,
+ gl::Error setData(const gl::Context *context,
GLenum target,
const void *data,
size_t size,
@@ -92,13 +92,12 @@
return gl::NoError();
}
- MOCK_METHOD5(setSubData, gl::Error(rx::ContextImpl *, GLenum, const void *, size_t, size_t));
+ MOCK_METHOD5(setSubData, gl::Error(const gl::Context *, GLenum, const void *, size_t, size_t));
MOCK_METHOD5(copySubData,
- gl::Error(rx::ContextImpl *context, BufferImpl *, GLintptr, GLintptr, GLsizeiptr));
- MOCK_METHOD3(map, gl::Error(rx::ContextImpl *context, GLenum, void **));
- MOCK_METHOD5(mapRange,
- gl::Error(rx::ContextImpl *context, size_t, size_t, GLbitfield, void **));
- MOCK_METHOD2(unmap, gl::Error(rx::ContextImpl *context, GLboolean *));
+ gl::Error(const gl::Context *, BufferImpl *, GLintptr, GLintptr, GLsizeiptr));
+ MOCK_METHOD3(map, gl::Error(const gl::Context *context, GLenum, void **));
+ MOCK_METHOD5(mapRange, gl::Error(const gl::Context *, size_t, size_t, GLbitfield, void **));
+ MOCK_METHOD2(unmap, gl::Error(const gl::Context *context, GLboolean *));
// BufferD3D
MOCK_METHOD0(markTransformFeedbackUsage, gl::Error());