From 2eecbc59d77c93d2d573670d09ba7a29fcdf58eb Mon Sep 17 00:00:00 2001 From: Colin Blundell <blundell@chromium.org> Date: Tue, 17 Dec 2024 10:29:52 -0800 Subject: [PATCH] [//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} --- gpu/command_buffer/client/shared_image_interface.cc | 6 ------ gpu/command_buffer/client/shared_image_interface.h | 2 +- gpu/command_buffer/client/test_shared_image_interface.cc | 6 ++++++ gpu/command_buffer/client/test_shared_image_interface.h | 3 +++ media/mojo/clients/mojo_stable_video_decoder_unittest.cc | 3 +++ 5 files changed, 13 insertions(+), 7 deletions(-) diff --git a/gpu/command_buffer/client/shared_image_interface.cc b/gpu/command_buffer/client/shared_image_interface.cc index 7f79f1d20e300..8cd91d295a1e0 100644 --- a/gpu/command_buffer/client/shared_image_interface.cc +++ b/gpu/command_buffer/client/shared_image_interface.cc @@ -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, diff --git a/gpu/command_buffer/client/shared_image_interface.h b/gpu/command_buffer/client/shared_image_interface.h index bd0dcc5e4bfa1..32e1aa03b7f98 100644 --- a/gpu/command_buffer/client/shared_image_interface.h +++ b/gpu/command_buffer/client/shared_image_interface.h @@ -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. diff --git a/gpu/command_buffer/client/test_shared_image_interface.cc b/gpu/command_buffer/client/test_shared_image_interface.cc index 6763d9b4cf945..0d717ab1bb8fd 100644 --- a/gpu/command_buffer/client/test_shared_image_interface.cc +++ b/gpu/command_buffer/client/test_shared_image_interface.cc @@ -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) { diff --git a/gpu/command_buffer/client/test_shared_image_interface.h b/gpu/command_buffer/client/test_shared_image_interface.h index 624b9be06a112..ba7a39ebae73c 100644 --- a/gpu/command_buffer/client/test_shared_image_interface.h +++ b/gpu/command_buffer/client/test_shared_image_interface.h @@ -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, diff --git a/media/mojo/clients/mojo_stable_video_decoder_unittest.cc b/media/mojo/clients/mojo_stable_video_decoder_unittest.cc index 4dc6378d7bfd7..6f421cb29a5f3 100644 --- a/media/mojo/clients/mojo_stable_video_decoder_unittest.cc +++ b/media/mojo/clients/mojo_stable_video_decoder_unittest.cc @@ -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));