| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #ifndef CONTENT_BROWSER_GPU_BROWSER_GPU_MEMORY_BUFFER_MANAGER_H_ | 5 #ifndef CONTENT_BROWSER_GPU_BROWSER_GPU_MEMORY_BUFFER_MANAGER_H_ |
| 6 #define CONTENT_BROWSER_GPU_BROWSER_GPU_MEMORY_BUFFER_MANAGER_H_ | 6 #define CONTENT_BROWSER_GPU_BROWSER_GPU_MEMORY_BUFFER_MANAGER_H_ |
| 7 | 7 |
| 8 #include <stddef.h> | 8 #include <stddef.h> |
| 9 #include <stdint.h> | 9 #include <stdint.h> |
| 10 | 10 |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 66 // Overridden from gpu::GpuMemoryBufferManager: | 66 // Overridden from gpu::GpuMemoryBufferManager: |
| 67 std::unique_ptr<gfx::GpuMemoryBuffer> AllocateGpuMemoryBuffer( | 67 std::unique_ptr<gfx::GpuMemoryBuffer> AllocateGpuMemoryBuffer( |
| 68 const gfx::Size& size, | 68 const gfx::Size& size, |
| 69 gfx::BufferFormat format, | 69 gfx::BufferFormat format, |
| 70 gfx::BufferUsage usage, | 70 gfx::BufferUsage usage, |
| 71 gpu::SurfaceHandle surface_handle) override; | 71 gpu::SurfaceHandle surface_handle) override; |
| 72 std::unique_ptr<gfx::GpuMemoryBuffer> CreateGpuMemoryBufferFromHandle( | 72 std::unique_ptr<gfx::GpuMemoryBuffer> CreateGpuMemoryBufferFromHandle( |
| 73 const gfx::GpuMemoryBufferHandle& handle, | 73 const gfx::GpuMemoryBufferHandle& handle, |
| 74 const gfx::Size& size, | 74 const gfx::Size& size, |
| 75 gfx::BufferFormat format) override; | 75 gfx::BufferFormat format) override; |
| 76 std::unique_ptr<gfx::GpuMemoryBuffer> CreateGpuMemoryBufferFromChildId( |
| 77 int child_client_id, |
| 78 const gfx::GpuMemoryBufferId& gpu_memory_buffer_id) override; |
| 76 gfx::GpuMemoryBuffer* GpuMemoryBufferFromClientBuffer( | 79 gfx::GpuMemoryBuffer* GpuMemoryBufferFromClientBuffer( |
| 77 ClientBuffer buffer) override; | 80 ClientBuffer buffer) override; |
| 78 void SetDestructionSyncToken(gfx::GpuMemoryBuffer* buffer, | 81 void SetDestructionSyncToken(gfx::GpuMemoryBuffer* buffer, |
| 79 const gpu::SyncToken& sync_token) override; | 82 const gpu::SyncToken& sync_token) override; |
| 80 | 83 |
| 81 // Overridden from base::trace_event::MemoryDumpProvider: | 84 // Overridden from base::trace_event::MemoryDumpProvider: |
| 82 bool OnMemoryDump(const base::trace_event::MemoryDumpArgs& args, | 85 bool OnMemoryDump(const base::trace_event::MemoryDumpArgs& args, |
| 83 base::trace_event::ProcessMemoryDump* pmd) override; | 86 base::trace_event::ProcessMemoryDump* pmd) override; |
| 84 | 87 |
| 85 void AllocateGpuMemoryBufferForChildProcess( | 88 void AllocateGpuMemoryBufferForChildProcess( |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 120 | 123 |
| 121 gfx::Size size; | 124 gfx::Size size; |
| 122 gfx::GpuMemoryBufferType type; | 125 gfx::GpuMemoryBufferType type; |
| 123 gfx::BufferFormat format; | 126 gfx::BufferFormat format; |
| 124 gfx::BufferUsage usage; | 127 gfx::BufferUsage usage; |
| 125 int gpu_host_id; | 128 int gpu_host_id; |
| 126 }; | 129 }; |
| 127 | 130 |
| 128 struct CreateGpuMemoryBufferRequest; | 131 struct CreateGpuMemoryBufferRequest; |
| 129 struct CreateGpuMemoryBufferFromHandleRequest; | 132 struct CreateGpuMemoryBufferFromHandleRequest; |
| 133 struct CreateGpuMemoryBufferFromChildIdRequest; |
| 130 | 134 |
| 131 using CreateDelegate = base::Callback<void(GpuProcessHost* host, | 135 using CreateDelegate = base::Callback<void(GpuProcessHost* host, |
| 132 gfx::GpuMemoryBufferId id, | 136 gfx::GpuMemoryBufferId id, |
| 133 const gfx::Size& size, | 137 const gfx::Size& size, |
| 134 gfx::BufferFormat format, | 138 gfx::BufferFormat format, |
| 135 gfx::BufferUsage usage, | 139 gfx::BufferUsage usage, |
| 136 int client_id, | 140 int client_id, |
| 137 const CreateCallback& callback)>; | 141 const CreateCallback& callback)>; |
| 138 | 142 |
| 139 std::unique_ptr<gfx::GpuMemoryBuffer> AllocateGpuMemoryBufferForSurface( | 143 std::unique_ptr<gfx::GpuMemoryBuffer> AllocateGpuMemoryBufferForSurface( |
| 140 const gfx::Size& size, | 144 const gfx::Size& size, |
| 141 gfx::BufferFormat format, | 145 gfx::BufferFormat format, |
| 142 gfx::BufferUsage usage, | 146 gfx::BufferUsage usage, |
| 143 gpu::SurfaceHandle surface_handle); | 147 gpu::SurfaceHandle surface_handle); |
| 144 | 148 |
| 145 // Functions that handle synchronous buffer creation requests. | 149 // Functions that handle synchronous buffer creation requests. |
| 146 void HandleCreateGpuMemoryBufferOnIO(CreateGpuMemoryBufferRequest* request); | 150 void HandleCreateGpuMemoryBufferOnIO(CreateGpuMemoryBufferRequest* request); |
| 147 void HandleCreateGpuMemoryBufferFromHandleOnIO( | 151 void HandleCreateGpuMemoryBufferFromHandleOnIO( |
| 148 CreateGpuMemoryBufferFromHandleRequest* request); | 152 CreateGpuMemoryBufferFromHandleRequest* request); |
| 153 void HandleCreateGpuMemoryBufferFromChildIdOnIO( |
| 154 CreateGpuMemoryBufferFromChildIdRequest* request); |
| 149 void HandleGpuMemoryBufferCreatedOnIO( | 155 void HandleGpuMemoryBufferCreatedOnIO( |
| 150 CreateGpuMemoryBufferRequest* request, | 156 CreateGpuMemoryBufferRequest* request, |
| 151 const gfx::GpuMemoryBufferHandle& handle); | 157 const gfx::GpuMemoryBufferHandle& handle); |
| 152 | 158 |
| 153 // Functions that implement asynchronous buffer creation. | 159 // Functions that implement asynchronous buffer creation. |
| 154 void CreateGpuMemoryBufferOnIO(const CreateDelegate& create_delegate, | 160 void CreateGpuMemoryBufferOnIO(const CreateDelegate& create_delegate, |
| 155 gfx::GpuMemoryBufferId id, | 161 gfx::GpuMemoryBufferId id, |
| 156 const gfx::Size& size, | 162 const gfx::Size& size, |
| 157 gfx::BufferFormat format, | 163 gfx::BufferFormat format, |
| 158 gfx::BufferUsage usage, | 164 gfx::BufferUsage usage, |
| (...skipping 25 matching lines...) Expand all Loading... |
| 184 using BufferMap = base::hash_map<gfx::GpuMemoryBufferId, BufferInfo>; | 190 using BufferMap = base::hash_map<gfx::GpuMemoryBufferId, BufferInfo>; |
| 185 using ClientMap = base::hash_map<int, BufferMap>; | 191 using ClientMap = base::hash_map<int, BufferMap>; |
| 186 ClientMap clients_; | 192 ClientMap clients_; |
| 187 | 193 |
| 188 DISALLOW_COPY_AND_ASSIGN(BrowserGpuMemoryBufferManager); | 194 DISALLOW_COPY_AND_ASSIGN(BrowserGpuMemoryBufferManager); |
| 189 }; | 195 }; |
| 190 | 196 |
| 191 } // namespace content | 197 } // namespace content |
| 192 | 198 |
| 193 #endif // CONTENT_BROWSER_GPU_BROWSER_GPU_MEMORY_BUFFER_MANAGER_H_ | 199 #endif // CONTENT_BROWSER_GPU_BROWSER_GPU_MEMORY_BUFFER_MANAGER_H_ |
| OLD | NEW |