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

Side by Side Diff: ui/gfx/gpu_memory_buffer.cc

Issue 2531963002: gfx: Fix sending native ozone pixmaps from InProcessCommandBuffer. (Closed)
Patch Set: . Created 4 years 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 unified diff | Download patch
« no previous file with comments | « ui/gfx/gpu_memory_buffer.h ('k') | ui/gfx/native_pixmap_handle.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "ui/gfx/gpu_memory_buffer.h" 5 #include "ui/gfx/gpu_memory_buffer.h"
6 6
7 namespace gfx { 7 namespace gfx {
8 8
9 GpuMemoryBufferHandle::GpuMemoryBufferHandle() 9 GpuMemoryBufferHandle::GpuMemoryBufferHandle()
10 : type(EMPTY_BUFFER), id(0), handle(base::SharedMemory::NULLHandle()) { 10 : type(EMPTY_BUFFER), id(0), handle(base::SharedMemory::NULLHandle()) {
11 } 11 }
12 12
13 GpuMemoryBufferHandle::GpuMemoryBufferHandle( 13 GpuMemoryBufferHandle::GpuMemoryBufferHandle(
14 const GpuMemoryBufferHandle& other) = default; 14 const GpuMemoryBufferHandle& other) = default;
15 15
16 GpuMemoryBufferHandle::~GpuMemoryBufferHandle() {} 16 GpuMemoryBufferHandle::~GpuMemoryBufferHandle() {}
17 17
18 void GpuMemoryBuffer::SetColorSpaceForScanout( 18 void GpuMemoryBuffer::SetColorSpaceForScanout(
19 const gfx::ColorSpace& color_space) {} 19 const gfx::ColorSpace& color_space) {}
20 20
21 GpuMemoryBufferHandle CloneHandleForIPC(
22 const GpuMemoryBufferHandle& source_handle) {
23 switch (source_handle.type) {
24 case gfx::EMPTY_BUFFER:
25 NOTREACHED();
26 return source_handle;
27 case gfx::SHARED_MEMORY_BUFFER: {
28 gfx::GpuMemoryBufferHandle handle;
29 handle.type = gfx::SHARED_MEMORY_BUFFER;
30 handle.handle = base::SharedMemory::DuplicateHandle(source_handle.handle);
31 handle.offset = source_handle.offset;
32 handle.stride = source_handle.stride;
33 return handle;
34 }
35 case gfx::OZONE_NATIVE_PIXMAP: {
36 gfx::GpuMemoryBufferHandle handle;
37 handle.type = gfx::OZONE_NATIVE_PIXMAP;
38 handle.id = source_handle.id;
39 #if defined(USE_OZONE)
40 handle.native_pixmap_handle =
41 gfx::CloneHandleForIPC(source_handle.native_pixmap_handle);
42 #endif
43 return handle;
44 }
45 case gfx::IO_SURFACE_BUFFER:
46 return source_handle;
47 }
48 return gfx::GpuMemoryBufferHandle();
49 }
50
21 } // namespace gfx 51 } // namespace gfx
OLDNEW
« no previous file with comments | « ui/gfx/gpu_memory_buffer.h ('k') | ui/gfx/native_pixmap_handle.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698