| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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_GPU_PROCESS_HOST_H_ | 5 #ifndef CONTENT_BROWSER_GPU_GPU_PROCESS_HOST_H_ |
| 6 #define CONTENT_BROWSER_GPU_GPU_PROCESS_HOST_H_ | 6 #define CONTENT_BROWSER_GPU_GPU_PROCESS_HOST_H_ |
| 7 | 7 |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <map> | 10 #include <map> |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 59 public IPC::Sender, | 59 public IPC::Sender, |
| 60 public ui::mojom::GpuHost, | 60 public ui::mojom::GpuHost, |
| 61 public base::NonThreadSafe { | 61 public base::NonThreadSafe { |
| 62 public: | 62 public: |
| 63 enum GpuProcessKind { | 63 enum GpuProcessKind { |
| 64 GPU_PROCESS_KIND_UNSANDBOXED, | 64 GPU_PROCESS_KIND_UNSANDBOXED, |
| 65 GPU_PROCESS_KIND_SANDBOXED, | 65 GPU_PROCESS_KIND_SANDBOXED, |
| 66 GPU_PROCESS_KIND_COUNT | 66 GPU_PROCESS_KIND_COUNT |
| 67 }; | 67 }; |
| 68 | 68 |
| 69 typedef base::Callback<void(const IPC::ChannelHandle&, const gpu::GPUInfo&)> | 69 enum class EstablishChannelStatus { |
| 70 EstablishChannelCallback; | 70 GPU_ACCESS_DENIED, // GPU access was not allowed. |
| 71 GPU_HOST_INVALID, // Request failed because the gpu host became invalid |
| 72 // while processing the request (e.g. the gpu process |
| 73 // may have been killed). The caller should normally |
| 74 // make another request to establish a new channel. |
| 75 SUCCESS |
| 76 }; |
| 77 using EstablishChannelCallback = |
| 78 base::Callback<void(const IPC::ChannelHandle&, |
| 79 const gpu::GPUInfo&, |
| 80 EstablishChannelStatus status)>; |
| 71 | 81 |
| 72 typedef base::Callback<void(const gfx::GpuMemoryBufferHandle& handle)> | 82 typedef base::Callback<void(const gfx::GpuMemoryBufferHandle& handle)> |
| 73 CreateGpuMemoryBufferCallback; | 83 CreateGpuMemoryBufferCallback; |
| 74 | 84 |
| 75 static bool gpu_enabled() { return gpu_enabled_; } | 85 static bool gpu_enabled() { return gpu_enabled_; } |
| 76 static int gpu_crash_count() { return gpu_crash_count_; } | 86 static int gpu_crash_count() { return gpu_crash_count_; } |
| 77 | 87 |
| 78 // Creates a new GpuProcessHost (if |force_create| is turned on) or gets an | 88 // Creates a new GpuProcessHost (if |force_create| is turned on) or gets an |
| 79 // existing one, resulting in the launching of a GPU process if required. | 89 // existing one, resulting in the launching of a GPU process if required. |
| 80 // Returns null on failure. It is not safe to store the pointer once control | 90 // Returns null on failure. It is not safe to store the pointer once control |
| (...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 285 gpu::GpuProcessHostActivityFlags activity_flags_; | 295 gpu::GpuProcessHostActivityFlags activity_flags_; |
| 286 | 296 |
| 287 base::WeakPtrFactory<GpuProcessHost> weak_ptr_factory_; | 297 base::WeakPtrFactory<GpuProcessHost> weak_ptr_factory_; |
| 288 | 298 |
| 289 DISALLOW_COPY_AND_ASSIGN(GpuProcessHost); | 299 DISALLOW_COPY_AND_ASSIGN(GpuProcessHost); |
| 290 }; | 300 }; |
| 291 | 301 |
| 292 } // namespace content | 302 } // namespace content |
| 293 | 303 |
| 294 #endif // CONTENT_BROWSER_GPU_GPU_PROCESS_HOST_H_ | 304 #endif // CONTENT_BROWSER_GPU_GPU_PROCESS_HOST_H_ |
| OLD | NEW |