OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 SERVICES_UI_GPU_GPU_SERVICE_INTERNAL_H_ | 5 #ifndef SERVICES_UI_GPU_GPU_SERVICE_INTERNAL_H_ |
6 #define SERVICES_UI_GPU_GPU_SERVICE_INTERNAL_H_ | 6 #define SERVICES_UI_GPU_GPU_SERVICE_INTERNAL_H_ |
7 | 7 |
8 #include "base/callback.h" | 8 #include "base/callback.h" |
9 #include "base/synchronization/waitable_event.h" | 9 #include "base/synchronization/waitable_event.h" |
10 #include "base/threading/non_thread_safe.h" | 10 #include "base/threading/non_thread_safe.h" |
(...skipping 12 matching lines...) Expand all Loading... |
23 #include "ui/gfx/native_widget_types.h" | 23 #include "ui/gfx/native_widget_types.h" |
24 | 24 |
25 namespace base { | 25 namespace base { |
26 template <typename T> | 26 template <typename T> |
27 struct DefaultSingletonTraits; | 27 struct DefaultSingletonTraits; |
28 } | 28 } |
29 | 29 |
30 namespace gpu { | 30 namespace gpu { |
31 class GpuChannelHost; | 31 class GpuChannelHost; |
32 class GpuMemoryBufferFactory; | 32 class GpuMemoryBufferFactory; |
| 33 class GpuWatchdogThread; |
33 class SyncPointManager; | 34 class SyncPointManager; |
34 } | 35 } |
35 | 36 |
36 namespace media { | 37 namespace media { |
37 class MediaService; | 38 class MediaService; |
38 } | 39 } |
39 | 40 |
40 namespace ui { | 41 namespace ui { |
41 | 42 |
42 // This runs in the GPU process, and communicates with the gpu host (which is | 43 // This runs in the GPU process, and communicates with the gpu host (which is |
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
130 | 131 |
131 // An event that will be signalled when we shutdown. | 132 // An event that will be signalled when we shutdown. |
132 base::WaitableEvent shutdown_event_; | 133 base::WaitableEvent shutdown_event_; |
133 | 134 |
134 // The main thread for GpuService. | 135 // The main thread for GpuService. |
135 base::Thread gpu_thread_; | 136 base::Thread gpu_thread_; |
136 | 137 |
137 // The thread that handles IO events for GpuService. | 138 // The thread that handles IO events for GpuService. |
138 base::Thread io_thread_; | 139 base::Thread io_thread_; |
139 | 140 |
| 141 scoped_refptr<gpu::GpuWatchdogThread> watchdog_thread_; |
| 142 |
140 std::unique_ptr<gpu::SyncPointManager> owned_sync_point_manager_; | 143 std::unique_ptr<gpu::SyncPointManager> owned_sync_point_manager_; |
141 | 144 |
142 std::unique_ptr<gpu::GpuChannelManager> gpu_channel_manager_; | 145 std::unique_ptr<gpu::GpuChannelManager> gpu_channel_manager_; |
143 | 146 |
144 std::unique_ptr<media::MediaService> media_service_; | 147 std::unique_ptr<media::MediaService> media_service_; |
145 | 148 |
146 std::unique_ptr<gpu::GpuMemoryBufferFactory> gpu_memory_buffer_factory_; | 149 std::unique_ptr<gpu::GpuMemoryBufferFactory> gpu_memory_buffer_factory_; |
147 | 150 |
148 gpu::GpuPreferences gpu_preferences_; | 151 gpu::GpuPreferences gpu_preferences_; |
149 | 152 |
150 // Information about the GPU, such as device and vendor ID. | 153 // Information about the GPU, such as device and vendor ID. |
151 gpu::GPUInfo gpu_info_; | 154 gpu::GPUInfo gpu_info_; |
152 | 155 |
153 mojo::StrongBinding<mojom::GpuServiceInternal> binding_; | 156 mojo::StrongBinding<mojom::GpuServiceInternal> binding_; |
154 | 157 |
155 DISALLOW_COPY_AND_ASSIGN(GpuServiceInternal); | 158 DISALLOW_COPY_AND_ASSIGN(GpuServiceInternal); |
156 }; | 159 }; |
157 | 160 |
158 } // namespace ui | 161 } // namespace ui |
159 | 162 |
160 #endif // SERVICES_UI_GPU_GPU_SERVICE_INTERNAL_H_ | 163 #endif // SERVICES_UI_GPU_GPU_SERVICE_INTERNAL_H_ |
OLD | NEW |