Commit e4ba2d87 by Michael Spang Committed by Commit Bot

Pass ContextVk instead of gl::Context to internal methods

Minor cleanup to change funciton signatures of vulkan specific methods in MemoryObjectVk & SemaphoreVk. Bug: angleproject:2475 Change-Id: I230664548004ebc48b559e0f25264ea948ce5a1f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2067500 Commit-Queue: Michael Spang <spang@chromium.org> Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
parent b8ca4309
...@@ -55,10 +55,12 @@ angle::Result MemoryObjectVk::importFd(gl::Context *context, ...@@ -55,10 +55,12 @@ angle::Result MemoryObjectVk::importFd(gl::Context *context,
gl::HandleType handleType, gl::HandleType handleType,
GLint fd) GLint fd)
{ {
ContextVk *contextVk = vk::GetImpl(context);
switch (handleType) switch (handleType)
{ {
case gl::HandleType::OpaqueFd: case gl::HandleType::OpaqueFd:
return importOpaqueFd(context, size, fd); return importOpaqueFd(contextVk, size, fd);
default: default:
UNREACHABLE(); UNREACHABLE();
...@@ -66,7 +68,7 @@ angle::Result MemoryObjectVk::importFd(gl::Context *context, ...@@ -66,7 +68,7 @@ angle::Result MemoryObjectVk::importFd(gl::Context *context,
} }
} }
angle::Result MemoryObjectVk::importOpaqueFd(gl::Context *context, GLuint64 size, GLint fd) angle::Result MemoryObjectVk::importOpaqueFd(ContextVk *contextVk, GLuint64 size, GLint fd)
{ {
ASSERT(mFd == kInvalidFd); ASSERT(mFd == kInvalidFd);
mFd = fd; mFd = fd;
...@@ -74,7 +76,7 @@ angle::Result MemoryObjectVk::importOpaqueFd(gl::Context *context, GLuint64 size ...@@ -74,7 +76,7 @@ angle::Result MemoryObjectVk::importOpaqueFd(gl::Context *context, GLuint64 size
return angle::Result::Continue; return angle::Result::Continue;
} }
angle::Result MemoryObjectVk::createImage(const gl::Context *context, angle::Result MemoryObjectVk::createImage(ContextVk *contextVk,
gl::TextureType type, gl::TextureType type,
size_t levels, size_t levels,
GLenum internalFormat, GLenum internalFormat,
...@@ -82,7 +84,6 @@ angle::Result MemoryObjectVk::createImage(const gl::Context *context, ...@@ -82,7 +84,6 @@ angle::Result MemoryObjectVk::createImage(const gl::Context *context,
GLuint64 offset, GLuint64 offset,
vk::ImageHelper *image) vk::ImageHelper *image)
{ {
ContextVk *contextVk = vk::GetImpl(context);
RendererVk *renderer = contextVk->getRenderer(); RendererVk *renderer = contextVk->getRenderer();
const vk::Format &vkFormat = renderer->getFormat(internalFormat); const vk::Format &vkFormat = renderer->getFormat(internalFormat);
......
...@@ -28,7 +28,7 @@ class MemoryObjectVk : public MemoryObjectImpl ...@@ -28,7 +28,7 @@ class MemoryObjectVk : public MemoryObjectImpl
gl::HandleType handleType, gl::HandleType handleType,
GLint fd) override; GLint fd) override;
angle::Result createImage(const gl::Context *context, angle::Result createImage(ContextVk *contextVk,
gl::TextureType type, gl::TextureType type,
size_t levels, size_t levels,
GLenum internalFormat, GLenum internalFormat,
...@@ -37,7 +37,7 @@ class MemoryObjectVk : public MemoryObjectImpl ...@@ -37,7 +37,7 @@ class MemoryObjectVk : public MemoryObjectImpl
vk::ImageHelper *image); vk::ImageHelper *image);
private: private:
angle::Result importOpaqueFd(gl::Context *context, GLuint64 size, GLint fd); angle::Result importOpaqueFd(ContextVk *contextVk, GLuint64 size, GLint fd);
GLuint64 mSize; GLuint64 mSize;
int mFd; int mFd;
......
...@@ -65,13 +65,15 @@ void SemaphoreVk::onDestroy(const gl::Context *context) ...@@ -65,13 +65,15 @@ void SemaphoreVk::onDestroy(const gl::Context *context)
angle::Result SemaphoreVk::importFd(gl::Context *context, gl::HandleType handleType, GLint fd) angle::Result SemaphoreVk::importFd(gl::Context *context, gl::HandleType handleType, GLint fd)
{ {
ContextVk *contextVk = vk::GetImpl(context);
switch (handleType) switch (handleType)
{ {
case gl::HandleType::OpaqueFd: case gl::HandleType::OpaqueFd:
return importOpaqueFd(context, fd); return importOpaqueFd(contextVk, fd);
default: default:
ANGLE_VK_UNREACHABLE(vk::GetImpl(context)); ANGLE_VK_UNREACHABLE(contextVk);
return angle::Result::Stop; return angle::Result::Stop;
} }
} }
...@@ -239,9 +241,8 @@ angle::Result SemaphoreVk::signal(gl::Context *context, ...@@ -239,9 +241,8 @@ angle::Result SemaphoreVk::signal(gl::Context *context,
return contextVk->flushImpl(&mSemaphore); return contextVk->flushImpl(&mSemaphore);
} }
angle::Result SemaphoreVk::importOpaqueFd(gl::Context *context, GLint fd) angle::Result SemaphoreVk::importOpaqueFd(ContextVk *contextVk, GLint fd)
{ {
ContextVk *contextVk = vk::GetImpl(context);
RendererVk *renderer = contextVk->getRenderer(); RendererVk *renderer = contextVk->getRenderer();
if (!mSemaphore.valid()) if (!mSemaphore.valid())
......
...@@ -34,7 +34,7 @@ class SemaphoreVk : public SemaphoreImpl ...@@ -34,7 +34,7 @@ class SemaphoreVk : public SemaphoreImpl
const gl::TextureBarrierVector &textureBarriers) override; const gl::TextureBarrierVector &textureBarriers) override;
private: private:
angle::Result importOpaqueFd(gl::Context *context, GLint fd); angle::Result importOpaqueFd(ContextVk *contextVk, GLint fd);
vk::Semaphore mSemaphore; vk::Semaphore mSemaphore;
}; };
......
...@@ -830,7 +830,7 @@ angle::Result TextureVk::setStorageExternalMemory(const gl::Context *context, ...@@ -830,7 +830,7 @@ angle::Result TextureVk::setStorageExternalMemory(const gl::Context *context,
setImageHelper(contextVk, new vk::ImageHelper(), mState.getType(), format, 0, 0, 0, true); setImageHelper(contextVk, new vk::ImageHelper(), mState.getType(), format, 0, 0, 0, true);
ANGLE_TRY( ANGLE_TRY(
memoryObjectVk->createImage(context, type, levels, internalFormat, size, offset, mImage)); memoryObjectVk->createImage(contextVk, type, levels, internalFormat, size, offset, mImage));
gl::Format glFormat(internalFormat); gl::Format glFormat(internalFormat);
ANGLE_TRY(initImageViews(contextVk, format, glFormat.info->sized, static_cast<uint32_t>(levels), ANGLE_TRY(initImageViews(contextVk, format, glFormat.info->sized, static_cast<uint32_t>(levels),
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment