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

Unified Diff: content/common/gpu/client/gpu_memory_buffer_impl_surface_texture.cc

Issue 1024113003: Add multi-planar functions to GpuMemoryBuffer (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Comment and typo fix. Created 5 years, 9 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: content/common/gpu/client/gpu_memory_buffer_impl_surface_texture.cc
diff --git a/content/common/gpu/client/gpu_memory_buffer_impl_surface_texture.cc b/content/common/gpu/client/gpu_memory_buffer_impl_surface_texture.cc
index 440dbfcec4b9b4ece5f37f28e43442902624c11b..a76305c00f8f8078c3987f26e7a3892cdb52a2f5 100644
--- a/content/common/gpu/client/gpu_memory_buffer_impl_surface_texture.cc
+++ b/content/common/gpu/client/gpu_memory_buffer_impl_surface_texture.cc
@@ -68,10 +68,11 @@ GpuMemoryBufferImplSurfaceTexture::CreateFromHandle(
handle.id, size, format, callback, native_window));
}
-void* GpuMemoryBufferImplSurfaceTexture::Map() {
+bool GpuMemoryBufferImplSurfaceTexture::Map(void** data) {
TRACE_EVENT0("gpu", "GpuMemoryBufferImplSurfaceTexture::Map");
DCHECK(!mapped_);
+ DCHECK_EQ(num_planes_, 1u);
DCHECK(native_window_);
ANativeWindow_Buffer buffer;
int status = ANativeWindow_lock(native_window_, &buffer, NULL);
@@ -87,7 +88,8 @@ void* GpuMemoryBufferImplSurfaceTexture::Map() {
DCHECK_LE(size_.width(), buffer.stride);
stride_ = stride_in_bytes;
mapped_ = true;
- return buffer.bits;
+ data[0] = buffer.bits;
+ return true;
}
void GpuMemoryBufferImplSurfaceTexture::Unmap() {
@@ -98,8 +100,10 @@ void GpuMemoryBufferImplSurfaceTexture::Unmap() {
mapped_ = false;
}
-uint32 GpuMemoryBufferImplSurfaceTexture::GetStride() const {
- return stride_;
+bool GpuMemoryBufferImplSurfaceTexture::GetStride(uint32* stride) const {
+ DCHECK_EQ(num_planes_, 1u);
+ stride[0] = stride_;
+ return true;
}
gfx::GpuMemoryBufferHandle GpuMemoryBufferImplSurfaceTexture::GetHandle()

Powered by Google App Engine
This is Rietveld 408576698