[viz] Eliminate BufferFormat(ResourceFormat)
Moves all callers to SinglePlaneSharedImageFormatToBufferFormat(SIF),
and inlines the eliminated function as the implementation of the SIF
function.
Bug: 1378708
Change-Id: Ic149217953c3fc263d89b4cedbb6e262c2e176b0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4570624
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Scott Violet <sky@chromium.org>
Reviewed-by: Vasiliy Telezhnikov <vasilyt@chromium.org>
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
Commit-Queue: Colin Blundell <blundell@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1150455}
diff --git a/cc/raster/one_copy_raster_buffer_provider.cc b/cc/raster/one_copy_raster_buffer_provider.cc
index 081f2b8..59747a8e 100644
--- a/cc/raster/one_copy_raster_buffer_provider.cc
+++ b/cc/raster/one_copy_raster_buffer_provider.cc
@@ -26,6 +26,7 @@
#include "components/viz/common/resources/platform_color.h"
#include "components/viz/common/resources/resource_sizes.h"
#include "components/viz/common/resources/shared_image_format.h"
+#include "components/viz/common/resources/shared_image_format_utils.h"
#include "gpu/GLES2/gl2extchromium.h"
#include "gpu/command_buffer/client/context_support.h"
#include "gpu/command_buffer/client/gpu_memory_buffer_manager.h"
@@ -325,7 +326,8 @@
if (!staging_buffer->gpu_memory_buffer) {
staging_buffer->gpu_memory_buffer =
gpu_memory_buffer_manager_->CreateGpuMemoryBuffer(
- staging_buffer->size, BufferFormat(format.resource_format()),
+ staging_buffer->size,
+ viz::SinglePlaneSharedImageFormatToBufferFormat(format),
gfx::BufferUsage::GPU_READ_CPU_READ_WRITE, gpu::kNullSurfaceHandle,
shutdown_event_);
}
diff --git a/cc/raster/zero_copy_raster_buffer_provider.cc b/cc/raster/zero_copy_raster_buffer_provider.cc
index fea89c2..84e26c3 100644
--- a/cc/raster/zero_copy_raster_buffer_provider.cc
+++ b/cc/raster/zero_copy_raster_buffer_provider.cc
@@ -17,7 +17,7 @@
#include "components/viz/client/client_resource_provider.h"
#include "components/viz/common/gpu/context_provider.h"
#include "components/viz/common/resources/platform_color.h"
-#include "components/viz/common/resources/resource_format_utils.h"
+#include "components/viz/common/resources/shared_image_format_utils.h"
#include "gpu/command_buffer/client/gpu_memory_buffer_manager.h"
#include "gpu/command_buffer/client/shared_image_interface.h"
#include "gpu/command_buffer/common/gpu_memory_buffer_support.h"
@@ -126,7 +126,8 @@
if (!gpu_memory_buffer_) {
gpu_memory_buffer_ = gpu_memory_buffer_manager_->CreateGpuMemoryBuffer(
- resource_size_, viz::BufferFormat(format_.resource_format()),
+ resource_size_,
+ viz::SinglePlaneSharedImageFormatToBufferFormat(format_),
kBufferUsage, gpu::kNullSurfaceHandle, shutdown_event_);
// Note that GpuMemoryBuffer allocation can fail.
// https://crbug.com/554541
@@ -191,7 +192,9 @@
const gpu::Capabilities& caps =
compositor_context_provider_->ContextCapabilities();
backing->texture_target = gpu::GetBufferTextureTarget(
- kBufferUsage, BufferFormat(resource.format().resource_format()), caps);
+ kBufferUsage,
+ viz::SinglePlaneSharedImageFormatToBufferFormat(resource.format()),
+ caps);
backing->overlay_candidate = true;
// This RasterBufferProvider will modify the resource outside of the
// GL command stream. So resources should not become available for reuse
diff --git a/cc/resources/resource_pool.cc b/cc/resources/resource_pool.cc
index 23da4d0..a7d8df9 100644
--- a/cc/resources/resource_pool.cc
+++ b/cc/resources/resource_pool.cc
@@ -26,6 +26,7 @@
#include "cc/base/container_util.h"
#include "components/viz/client/client_resource_provider.h"
#include "components/viz/common/gpu/context_provider.h"
+#include "components/viz/common/resources/shared_image_format_utils.h"
#include "gpu/command_buffer/client/context_support.h"
#include "gpu/command_buffer/client/gles2_interface.h"
#include "gpu/command_buffer/common/capabilities.h"
@@ -83,8 +84,8 @@
IsGpuMemoryBufferFormatSupported(format.resource_format());
if (overlay_candidate) {
texture_target = gpu::GetBufferTextureTarget(
- gfx::BufferUsage::SCANOUT, BufferFormat(format.resource_format()),
- caps);
+ gfx::BufferUsage::SCANOUT,
+ viz::SinglePlaneSharedImageFormatToBufferFormat(format), caps);
} else {
texture_target = GL_TEXTURE_2D;
}
diff --git a/cc/resources/resource_pool_unittest.cc b/cc/resources/resource_pool_unittest.cc
index eb04282..173da44 100644
--- a/cc/resources/resource_pool_unittest.cc
+++ b/cc/resources/resource_pool_unittest.cc
@@ -16,6 +16,7 @@
#include "components/viz/client/client_resource_provider.h"
#include "components/viz/common/resources/resource_sizes.h"
#include "components/viz/common/resources/returned_resource.h"
+#include "components/viz/common/resources/shared_image_format_utils.h"
#include "components/viz/test/test_context_provider.h"
#include "components/viz/test/test_context_support.h"
#include "components/viz/test/test_shared_bitmap_manager.h"
@@ -691,7 +692,7 @@
gfx::Size size(100, 101);
viz::SharedImageFormat format = viz::SinglePlaneFormat::kRGBA_4444;
EXPECT_NE(gfx::BufferFormat::RGBA_8888,
- viz::BufferFormat(format.resource_format()));
+ viz::SinglePlaneSharedImageFormatToBufferFormat(format));
gfx::ColorSpace color_space = gfx::ColorSpace::CreateSRGB();
uint32_t target = 5;
gpu::Mailbox mailbox;
@@ -745,7 +746,7 @@
gfx::Size size(100, 101);
viz::SharedImageFormat format = viz::SinglePlaneFormat::kRGBA_4444;
EXPECT_NE(gfx::BufferFormat::RGBA_8888,
- viz::BufferFormat(format.resource_format()));
+ viz::SinglePlaneSharedImageFormatToBufferFormat(format));
gfx::ColorSpace color_space = gfx::ColorSpace::CreateSRGB();
uint32_t target = 5;
diff --git a/cc/slim/frame_sink_impl.cc b/cc/slim/frame_sink_impl.cc
index dde863fa..2043172 100644
--- a/cc/slim/frame_sink_impl.cc
+++ b/cc/slim/frame_sink_impl.cc
@@ -23,6 +23,7 @@
#include "components/viz/common/resources/resource_format_utils.h"
#include "components/viz/common/resources/resource_id.h"
#include "components/viz/common/resources/shared_image_format.h"
+#include "components/viz/common/resources/shared_image_format_utils.h"
#include "components/viz/common/resources/transferable_resource.h"
#include "gpu/command_buffer/client/shared_image_interface.h"
#include "gpu/command_buffer/common/gpu_memory_buffer_support.h"
@@ -168,7 +169,8 @@
gpu::SyncToken sync_token = sii->GenUnverifiedSyncToken();
GLenum texture_target = gpu::GetBufferTextureTarget(
- gfx::BufferUsage::SCANOUT, BufferFormat(format.resource_format()), caps);
+ gfx::BufferUsage::SCANOUT,
+ viz::SinglePlaneSharedImageFormatToBufferFormat(format), caps);
uploaded_resource.viz_resource_id = resource_provider_.ImportResource(
viz::TransferableResource::MakeGpu(
uploaded_resource.mailbox, texture_target, sync_token,
diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc
index 52eaa10..225fd4e 100644
--- a/cc/trees/layer_tree_host_impl.cc
+++ b/cc/trees/layer_tree_host_impl.cc
@@ -4670,8 +4670,8 @@
if (overlay_candidate) {
shared_image_usage |= gpu::SHARED_IMAGE_USAGE_SCANOUT;
texture_target = gpu::GetBufferTextureTarget(
- gfx::BufferUsage::SCANOUT, BufferFormat(format.resource_format()),
- caps);
+ gfx::BufferUsage::SCANOUT,
+ viz::SinglePlaneSharedImageFormatToBufferFormat(format), caps);
}
} else {
shm = viz::bitmap_allocation::AllocateSharedBitmap(upload_size, format);