Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(252)

Unified Diff: gpu/ipc/common/gpu_memory_buffer_support.cc

Issue 2930143004: Add DIRECT_COMPOSITION GpuMemoryBuffer type.
Patch Set: fix build Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: gpu/ipc/common/gpu_memory_buffer_support.cc
diff --git a/gpu/ipc/common/gpu_memory_buffer_support.cc b/gpu/ipc/common/gpu_memory_buffer_support.cc
index 77f98359d26a34b845720227545aeb54bdcaf1bf..76a2bd27533a88dc34a10d55f760469a1ade518d 100644
--- a/gpu/ipc/common/gpu_memory_buffer_support.cc
+++ b/gpu/ipc/common/gpu_memory_buffer_support.cc
@@ -20,7 +20,11 @@ gfx::GpuMemoryBufferType GetNativeGpuMemoryBufferType() {
#if defined(OS_LINUX)
return gfx::NATIVE_PIXMAP;
#endif
+#if defined(OS_WIN)
+ return gfx::DIRECT_COMPOSITION;
+#else
return gfx::EMPTY_BUFFER;
+#endif
}
bool IsNativeGpuMemoryBufferConfigurationSupported(gfx::BufferFormat format,
@@ -42,6 +46,8 @@ bool IsNativeGpuMemoryBufferConfigurationSupported(gfx::BufferFormat format,
format == gfx::BufferFormat::RGBA_F16 ||
format == gfx::BufferFormat::UYVY_422 ||
format == gfx::BufferFormat::YUV_420_BIPLANAR;
+ case gfx::BufferUsage::SCANOUT_ASYNC:
+ return false;
}
NOTREACHED();
return false;
@@ -56,8 +62,26 @@ bool IsNativeGpuMemoryBufferConfigurationSupported(gfx::BufferFormat format,
->IsConfigurationSupported(format, usage);
#endif
- NOTREACHED();
+#if defined(OS_WIN)
+ switch (usage) {
+ case gfx::BufferUsage::SCANOUT:
+ case gfx::BufferUsage::SCANOUT_ASYNC:
+ return format == gfx::BufferFormat::BGRA_8888 ||
+ format == gfx::BufferFormat::RGBA_8888 ||
+ format == gfx::BufferFormat::BGRX_8888 ||
+ format == gfx::BufferFormat::BGRA_8888;
+ case gfx::BufferUsage::GPU_READ:
+ case gfx::BufferUsage::SCANOUT_CPU_READ_WRITE:
+ case gfx::BufferUsage::GPU_READ_CPU_READ_WRITE:
+ case gfx::BufferUsage::GPU_READ_CPU_READ_WRITE_PERSISTENT:
+ return false;
+ }
+#endif
+
return false;
+
+ // NOTREACHED();
+ // return false;
}
} // namespace gpu

Powered by Google App Engine
This is Rietveld 408576698