Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit e4ba2d8

Browse files
mspangCommit Bot
authored andcommitted
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: Jamie Madill <jmadill@chromium.org>
1 parent b8ca430 commit e4ba2d8

File tree

5 files changed

+14
-12
lines changed

5 files changed

+14
-12
lines changed

src/libANGLE/renderer/vulkan/MemoryObjectVk.cpp

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -55,34 +55,35 @@ angle::Result MemoryObjectVk::importFd(gl::Context *context,
5555
gl::HandleType handleType,
5656
GLint fd)
5757
{
58+
ContextVk *contextVk = vk::GetImpl(context);
59+
5860
switch (handleType)
5961
{
6062
case gl::HandleType::OpaqueFd:
61-
return importOpaqueFd(context, size, fd);
63+
return importOpaqueFd(contextVk, size, fd);
6264

6365
default:
6466
UNREACHABLE();
6567
return angle::Result::Stop;
6668
}
6769
}
6870

69-
angle::Result MemoryObjectVk::importOpaqueFd(gl::Context *context, GLuint64 size, GLint fd)
71+
angle::Result MemoryObjectVk::importOpaqueFd(ContextVk *contextVk, GLuint64 size, GLint fd)
7072
{
7173
ASSERT(mFd == kInvalidFd);
7274
mFd = fd;
7375
mSize = size;
7476
return angle::Result::Continue;
7577
}
7678

77-
angle::Result MemoryObjectVk::createImage(const gl::Context *context,
79+
angle::Result MemoryObjectVk::createImage(ContextVk *contextVk,
7880
gl::TextureType type,
7981
size_t levels,
8082
GLenum internalFormat,
8183
const gl::Extents &size,
8284
GLuint64 offset,
8385
vk::ImageHelper *image)
8486
{
85-
ContextVk *contextVk = vk::GetImpl(context);
8687
RendererVk *renderer = contextVk->getRenderer();
8788

8889
const vk::Format &vkFormat = renderer->getFormat(internalFormat);

src/libANGLE/renderer/vulkan/MemoryObjectVk.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ class MemoryObjectVk : public MemoryObjectImpl
2828
gl::HandleType handleType,
2929
GLint fd) override;
3030

31-
angle::Result createImage(const gl::Context *context,
31+
angle::Result createImage(ContextVk *contextVk,
3232
gl::TextureType type,
3333
size_t levels,
3434
GLenum internalFormat,
@@ -37,7 +37,7 @@ class MemoryObjectVk : public MemoryObjectImpl
3737
vk::ImageHelper *image);
3838

3939
private:
40-
angle::Result importOpaqueFd(gl::Context *context, GLuint64 size, GLint fd);
40+
angle::Result importOpaqueFd(ContextVk *contextVk, GLuint64 size, GLint fd);
4141

4242
GLuint64 mSize;
4343
int mFd;

src/libANGLE/renderer/vulkan/SemaphoreVk.cpp

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -65,13 +65,15 @@ void SemaphoreVk::onDestroy(const gl::Context *context)
6565

6666
angle::Result SemaphoreVk::importFd(gl::Context *context, gl::HandleType handleType, GLint fd)
6767
{
68+
ContextVk *contextVk = vk::GetImpl(context);
69+
6870
switch (handleType)
6971
{
7072
case gl::HandleType::OpaqueFd:
71-
return importOpaqueFd(context, fd);
73+
return importOpaqueFd(contextVk, fd);
7274

7375
default:
74-
ANGLE_VK_UNREACHABLE(vk::GetImpl(context));
76+
ANGLE_VK_UNREACHABLE(contextVk);
7577
return angle::Result::Stop;
7678
}
7779
}
@@ -239,9 +241,8 @@ angle::Result SemaphoreVk::signal(gl::Context *context,
239241
return contextVk->flushImpl(&mSemaphore);
240242
}
241243

242-
angle::Result SemaphoreVk::importOpaqueFd(gl::Context *context, GLint fd)
244+
angle::Result SemaphoreVk::importOpaqueFd(ContextVk *contextVk, GLint fd)
243245
{
244-
ContextVk *contextVk = vk::GetImpl(context);
245246
RendererVk *renderer = contextVk->getRenderer();
246247

247248
if (!mSemaphore.valid())

src/libANGLE/renderer/vulkan/SemaphoreVk.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ class SemaphoreVk : public SemaphoreImpl
3434
const gl::TextureBarrierVector &textureBarriers) override;
3535

3636
private:
37-
angle::Result importOpaqueFd(gl::Context *context, GLint fd);
37+
angle::Result importOpaqueFd(ContextVk *contextVk, GLint fd);
3838

3939
vk::Semaphore mSemaphore;
4040
};

src/libANGLE/renderer/vulkan/TextureVk.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -830,7 +830,7 @@ angle::Result TextureVk::setStorageExternalMemory(const gl::Context *context,
830830
setImageHelper(contextVk, new vk::ImageHelper(), mState.getType(), format, 0, 0, 0, true);
831831

832832
ANGLE_TRY(
833-
memoryObjectVk->createImage(context, type, levels, internalFormat, size, offset, mImage));
833+
memoryObjectVk->createImage(contextVk, type, levels, internalFormat, size, offset, mImage));
834834

835835
gl::Format glFormat(internalFormat);
836836
ANGLE_TRY(initImageViews(contextVk, format, glFormat.info->sized, static_cast<uint32_t>(levels),

0 commit comments

Comments
 (0)