| 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 "gpu/command_buffer/service/gpu_control_service.h" | 5 #include "gpu/command_buffer/service/gpu_control_service.h" |
| 6 | 6 |
| 7 #include "gpu/command_buffer/client/gpu_memory_buffer_factory.h" | 7 #include "gpu/command_buffer/client/gpu_memory_buffer_factory.h" |
| 8 #include "gpu/command_buffer/service/gpu_memory_buffer_manager.h" | 8 #include "gpu/command_buffer/service/gpu_memory_buffer_manager.h" |
| 9 #include "gpu/command_buffer/service/mailbox_manager.h" | 9 #include "gpu/command_buffer/service/mailbox_manager.h" |
| 10 #include "gpu/command_buffer/service/query_manager.h" | 10 #include "gpu/command_buffer/service/query_manager.h" |
| (...skipping 19 matching lines...) Expand all Loading... |
| 30 } | 30 } |
| 31 | 31 |
| 32 gpu::Capabilities GpuControlService::GetCapabilities() { | 32 gpu::Capabilities GpuControlService::GetCapabilities() { |
| 33 return capabilities_; | 33 return capabilities_; |
| 34 } | 34 } |
| 35 | 35 |
| 36 gfx::GpuMemoryBuffer* GpuControlService::CreateGpuMemoryBuffer( | 36 gfx::GpuMemoryBuffer* GpuControlService::CreateGpuMemoryBuffer( |
| 37 size_t width, | 37 size_t width, |
| 38 size_t height, | 38 size_t height, |
| 39 unsigned internalformat, | 39 unsigned internalformat, |
| 40 gfx::GpuMemoryBuffer::Usage usage, |
| 40 int32* id) { | 41 int32* id) { |
| 41 *id = -1; | 42 *id = -1; |
| 42 | 43 |
| 43 CHECK(gpu_memory_buffer_factory_) << "No GPU memory buffer factory provided"; | 44 CHECK(gpu_memory_buffer_factory_) << "No GPU memory buffer factory provided"; |
| 44 linked_ptr<gfx::GpuMemoryBuffer> buffer = make_linked_ptr( | 45 linked_ptr<gfx::GpuMemoryBuffer> buffer = |
| 45 gpu_memory_buffer_factory_->CreateGpuMemoryBuffer(width, | 46 make_linked_ptr(gpu_memory_buffer_factory_->CreateGpuMemoryBuffer( |
| 46 height, | 47 width, height, internalformat, usage)); |
| 47 internalformat)); | |
| 48 if (!buffer.get()) | 48 if (!buffer.get()) |
| 49 return NULL; | 49 return NULL; |
| 50 | 50 |
| 51 static int32 next_id = 1; | 51 static int32 next_id = 1; |
| 52 *id = next_id++; | 52 *id = next_id++; |
| 53 | 53 |
| 54 if (!RegisterGpuMemoryBuffer(*id, | 54 if (!RegisterGpuMemoryBuffer( |
| 55 buffer->GetHandle(), | 55 *id, buffer->GetHandle(), width, height, internalformat, usage)) { |
| 56 width, | |
| 57 height, | |
| 58 internalformat)) { | |
| 59 *id = -1; | 56 *id = -1; |
| 60 return NULL; | 57 return NULL; |
| 61 } | 58 } |
| 62 | 59 |
| 63 gpu_memory_buffers_[*id] = buffer; | 60 gpu_memory_buffers_[*id] = buffer; |
| 64 return buffer.get(); | 61 return buffer.get(); |
| 65 } | 62 } |
| 66 | 63 |
| 67 void GpuControlService::DestroyGpuMemoryBuffer(int32 id) { | 64 void GpuControlService::DestroyGpuMemoryBuffer(int32 id) { |
| 68 GpuMemoryBufferMap::iterator it = gpu_memory_buffers_.find(id); | 65 GpuMemoryBufferMap::iterator it = gpu_memory_buffers_.find(id); |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 108 uint32 GpuControlService::CreateStreamTexture(uint32 texture_id) { | 105 uint32 GpuControlService::CreateStreamTexture(uint32 texture_id) { |
| 109 NOTREACHED(); | 106 NOTREACHED(); |
| 110 return 0; | 107 return 0; |
| 111 } | 108 } |
| 112 | 109 |
| 113 bool GpuControlService::RegisterGpuMemoryBuffer( | 110 bool GpuControlService::RegisterGpuMemoryBuffer( |
| 114 int32 id, | 111 int32 id, |
| 115 gfx::GpuMemoryBufferHandle buffer, | 112 gfx::GpuMemoryBufferHandle buffer, |
| 116 size_t width, | 113 size_t width, |
| 117 size_t height, | 114 size_t height, |
| 118 unsigned internalformat) { | 115 unsigned internalformat, |
| 119 return gpu_memory_buffer_manager_->RegisterGpuMemoryBuffer(id, | 116 unsigned usage) { |
| 120 buffer, | 117 return gpu_memory_buffer_manager_->RegisterGpuMemoryBuffer( |
| 121 width, | 118 id, buffer, width, height, internalformat, usage); |
| 122 height, | |
| 123 internalformat); | |
| 124 } | 119 } |
| 125 | 120 |
| 126 } // namespace gpu | 121 } // namespace gpu |
| OLD | NEW |