OLD | NEW |
---|---|
(Empty) | |
1 // Copyright 2017 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #ifndef COMPONENTS_VIZ_SERVICE_DISPLAY_COMPOSITOR_IN_PROCESS_GPU_MEMORY_BUFFER_M ANAGER_H_ | |
6 #define COMPONENTS_VIZ_SERVICE_DISPLAY_COMPOSITOR_IN_PROCESS_GPU_MEMORY_BUFFER_M ANAGER_H_ | |
7 | |
8 #include "base/memory/weak_ptr.h" | |
9 #include "gpu/command_buffer/client/gpu_memory_buffer_manager.h" | |
10 #include "gpu/ipc/service/gpu_memory_buffer_factory.h" | |
11 | |
12 namespace gpu { | |
13 class GpuChannelManager; | |
14 } | |
15 | |
16 namespace viz { | |
17 | |
18 class InProcessGpuMemoryBufferManager : public gpu::GpuMemoryBufferManager { | |
19 public: | |
20 explicit InProcessGpuMemoryBufferManager( | |
21 gpu::GpuChannelManager* channel_manager); | |
22 | |
23 ~InProcessGpuMemoryBufferManager() override; | |
24 | |
25 private: | |
26 void DestroyGpuMemoryBuffer(gfx::GpuMemoryBufferId id, | |
27 int client_id, | |
28 const gpu::SyncToken& sync_token); | |
29 // gpu::GpuMemoryBufferManager: | |
30 std::unique_ptr<gfx::GpuMemoryBuffer> CreateGpuMemoryBuffer( | |
reveman
2017/06/20 18:22:07
nit: why not public? it's public to anyone with a
sadrul
2017/06/21 05:57:46
Made these public.
| |
31 const gfx::Size& size, | |
32 gfx::BufferFormat format, | |
33 gfx::BufferUsage usage, | |
34 gpu::SurfaceHandle surface_handle) override; | |
35 void SetDestructionSyncToken(gfx::GpuMemoryBuffer* buffer, | |
36 const gpu::SyncToken& sync_token) override; | |
37 | |
38 const int client_id_; | |
39 int next_gpu_memory_id_ = 1; | |
40 gpu::GpuChannelManager* channel_manager_; | |
41 base::WeakPtr<InProcessGpuMemoryBufferManager> weak_ptr_; | |
42 base::WeakPtrFactory<InProcessGpuMemoryBufferManager> weak_factory_; | |
43 DISALLOW_COPY_AND_ASSIGN(InProcessGpuMemoryBufferManager); | |
44 }; | |
45 | |
46 } // namespace viz | |
47 | |
48 #endif // COMPONENTS_VIZ_SERVICE_DISPLAY_COMPOSITOR_IN_PROCESS_GPU_MEMORY_BUFFE R_MANAGER_H_ | |
OLD | NEW |