0

[//gpu] Make SII::CreateSharedImageForSoftwareCompositor() pure virtual

All production subclasses now have implementations. We will give TestSII
an implementation only when this method actually gets exercised in
tests.

Bug: 379996128
Change-Id: I37b51dd986c7635d078d0056d2507968be19f4b3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6098254
Commit-Queue: vikas soni <vikassoni@chromium.org>
Reviewed-by: vikas soni <vikassoni@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1397425}
This commit is contained in:
Colin Blundell
2024-12-17 10:29:52 -08:00
committed by Chromium LUCI CQ
parent a5fa7d26d3
commit 2eecbc59d7
5 changed files with 13 additions and 7 deletions

@ -84,12 +84,6 @@ scoped_refptr<ClientSharedImage> SharedImageInterface::CreateSharedImage(
NOTREACHED();
}
scoped_refptr<ClientSharedImage>
SharedImageInterface::CreateSharedImageForSoftwareCompositor(
const SharedImageInfo& si_info) {
NOTREACHED();
}
scoped_refptr<ClientSharedImage>
SharedImageInterface::AddReferenceToSharedImage(
const SyncToken& sync_token,

@ -203,7 +203,7 @@ class GPU_EXPORT SharedImageInterface
// created internally and a shared image is created out of this buffer. This
// method is used by the software compositor only.
virtual scoped_refptr<ClientSharedImage>
CreateSharedImageForSoftwareCompositor(const SharedImageInfo& si_info);
CreateSharedImageForSoftwareCompositor(const SharedImageInfo& si_info) = 0;
// Updates a shared image after its GpuMemoryBuffer (if any) was modified on
// the CPU or through external devices, after |sync_token| has been released.

@ -311,6 +311,12 @@ TestSharedImageInterface::CreateSharedImage(
return shared_image_mapping;
}
scoped_refptr<ClientSharedImage>
TestSharedImageInterface::CreateSharedImageForSoftwareCompositor(
const SharedImageInfo& si_info) {
NOTREACHED();
}
void TestSharedImageInterface::UpdateSharedImage(
const SyncToken& sync_token,
const Mailbox& mailbox) {

@ -62,6 +62,9 @@ class TestSharedImageInterface : public SharedImageInterface {
SharedImageInterface::SharedImageMapping CreateSharedImage(
const SharedImageInfo& si_info) override;
scoped_refptr<ClientSharedImage> CreateSharedImageForSoftwareCompositor(
const SharedImageInfo& si_info) override;
void UpdateSharedImage(const SyncToken& sync_token,
const Mailbox& mailbox) override;
void UpdateSharedImage(const SyncToken& sync_token,

@ -355,6 +355,9 @@ class MockSharedImageInterface : public gpu::SharedImageInterface {
gfx::GpuMemoryBufferHandle buffer_handle));
MOCK_METHOD1(CreateSharedImage,
SharedImageMapping(const gpu::SharedImageInfo& si_info));
MOCK_METHOD1(CreateSharedImageForSoftwareCompositor,
scoped_refptr<gpu::ClientSharedImage>(
const gpu::SharedImageInfo& si_info));
MOCK_METHOD2(UpdateSharedImage,
void(const gpu::SyncToken& sync_token,
const gpu::Mailbox& mailbox));