OLD | NEW |
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 "content/common/gpu/client/gpu_memory_buffer_impl.h" | 5 #include "content/common/gpu/client/gpu_memory_buffer_impl.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 #include "base/numerics/safe_math.h" | |
9 #include "content/common/gpu/client/gpu_memory_buffer_impl_shared_memory.h" | 8 #include "content/common/gpu/client/gpu_memory_buffer_impl_shared_memory.h" |
10 #include "ui/gfx/buffer_format_util.h" | |
11 #include "ui/gl/gl_bindings.h" | |
12 | 9 |
13 #if defined(OS_MACOSX) | 10 #if defined(OS_MACOSX) |
14 #include "content/common/gpu/client/gpu_memory_buffer_impl_io_surface.h" | 11 #include "content/common/gpu/client/gpu_memory_buffer_impl_io_surface.h" |
15 #endif | 12 #endif |
16 | 13 |
17 #if defined(OS_ANDROID) | 14 #if defined(OS_ANDROID) |
18 #include "content/common/gpu/client/gpu_memory_buffer_impl_surface_texture.h" | 15 #include "content/common/gpu/client/gpu_memory_buffer_impl_surface_texture.h" |
19 #endif | 16 #endif |
20 | 17 |
21 #if defined(USE_OZONE) | 18 #if defined(USE_OZONE) |
(...skipping 21 matching lines...) Expand all Loading... |
43 // static | 40 // static |
44 scoped_ptr<GpuMemoryBufferImpl> GpuMemoryBufferImpl::CreateFromHandle( | 41 scoped_ptr<GpuMemoryBufferImpl> GpuMemoryBufferImpl::CreateFromHandle( |
45 const gfx::GpuMemoryBufferHandle& handle, | 42 const gfx::GpuMemoryBufferHandle& handle, |
46 const gfx::Size& size, | 43 const gfx::Size& size, |
47 gfx::BufferFormat format, | 44 gfx::BufferFormat format, |
48 gfx::BufferUsage usage, | 45 gfx::BufferUsage usage, |
49 const DestructionCallback& callback) { | 46 const DestructionCallback& callback) { |
50 switch (handle.type) { | 47 switch (handle.type) { |
51 case gfx::SHARED_MEMORY_BUFFER: | 48 case gfx::SHARED_MEMORY_BUFFER: |
52 return GpuMemoryBufferImplSharedMemory::CreateFromHandle( | 49 return GpuMemoryBufferImplSharedMemory::CreateFromHandle( |
53 handle, size, format, callback); | 50 handle, size, format, usage, callback); |
54 #if defined(OS_MACOSX) | 51 #if defined(OS_MACOSX) |
55 case gfx::IO_SURFACE_BUFFER: | 52 case gfx::IO_SURFACE_BUFFER: |
56 return GpuMemoryBufferImplIOSurface::CreateFromHandle( | 53 return GpuMemoryBufferImplIOSurface::CreateFromHandle( |
57 handle, size, format, usage, callback); | 54 handle, size, format, usage, callback); |
58 #endif | 55 #endif |
59 #if defined(OS_ANDROID) | 56 #if defined(OS_ANDROID) |
60 case gfx::SURFACE_TEXTURE_BUFFER: | 57 case gfx::SURFACE_TEXTURE_BUFFER: |
61 return GpuMemoryBufferImplSurfaceTexture::CreateFromHandle( | 58 return GpuMemoryBufferImplSurfaceTexture::CreateFromHandle( |
62 handle, size, format, callback); | 59 handle, size, format, usage, callback); |
63 #endif | 60 #endif |
64 #if defined(USE_OZONE) | 61 #if defined(USE_OZONE) |
65 case gfx::OZONE_NATIVE_PIXMAP: | 62 case gfx::OZONE_NATIVE_PIXMAP: |
66 return GpuMemoryBufferImplOzoneNativePixmap::CreateFromHandle( | 63 return GpuMemoryBufferImplOzoneNativePixmap::CreateFromHandle( |
67 handle, size, format, usage, callback); | 64 handle, size, format, usage, callback); |
68 #endif | 65 #endif |
69 default: | 66 default: |
70 NOTREACHED(); | 67 NOTREACHED(); |
71 return nullptr; | 68 return nullptr; |
72 } | 69 } |
(...skipping 15 matching lines...) Expand all Loading... |
88 | 85 |
89 gfx::GpuMemoryBufferId GpuMemoryBufferImpl::GetId() const { | 86 gfx::GpuMemoryBufferId GpuMemoryBufferImpl::GetId() const { |
90 return id_; | 87 return id_; |
91 } | 88 } |
92 | 89 |
93 ClientBuffer GpuMemoryBufferImpl::AsClientBuffer() { | 90 ClientBuffer GpuMemoryBufferImpl::AsClientBuffer() { |
94 return reinterpret_cast<ClientBuffer>(this); | 91 return reinterpret_cast<ClientBuffer>(this); |
95 } | 92 } |
96 | 93 |
97 } // namespace content | 94 } // namespace content |
OLD | NEW |