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 22 matching lines...) Expand all Loading... |
33 #include "ui/gfx/native_widget_types.h" | 33 #include "ui/gfx/native_widget_types.h" |
34 #include "url/gurl.h" | 34 #include "url/gurl.h" |
35 | 35 |
36 struct GPUCreateCommandBufferConfig; | 36 struct GPUCreateCommandBufferConfig; |
37 | 37 |
38 namespace IPC { | 38 namespace IPC { |
39 struct ChannelHandle; | 39 struct ChannelHandle; |
40 } | 40 } |
41 | 41 |
42 namespace gpu { | 42 namespace gpu { |
| 43 struct GpuPreferences; |
43 struct SyncToken; | 44 struct SyncToken; |
44 } | 45 } |
45 | 46 |
46 namespace content { | 47 namespace content { |
47 class BrowserChildProcessHostImpl; | 48 class BrowserChildProcessHostImpl; |
48 class GpuMainThread; | 49 class GpuMainThread; |
49 class InProcessChildThreadParams; | 50 class InProcessChildThreadParams; |
50 class MojoApplicationHost; | 51 class MojoApplicationHost; |
51 class RenderWidgetHostViewFrameSubscriber; | 52 class RenderWidgetHostViewFrameSubscriber; |
52 class ShaderDiskCache; | 53 class ShaderDiskCache; |
53 | 54 |
54 typedef base::Thread* (*GpuMainThreadFactoryFunction)( | 55 typedef base::Thread* (*GpuMainThreadFactoryFunction)( |
55 const InProcessChildThreadParams&); | 56 const InProcessChildThreadParams&, const gpu::GpuPreferences&); |
56 | 57 |
57 class GpuProcessHost : public BrowserChildProcessHostDelegate, | 58 class GpuProcessHost : public BrowserChildProcessHostDelegate, |
58 public IPC::Sender, | 59 public IPC::Sender, |
59 public base::NonThreadSafe { | 60 public base::NonThreadSafe { |
60 public: | 61 public: |
61 enum GpuProcessKind { | 62 enum GpuProcessKind { |
62 GPU_PROCESS_KIND_UNSANDBOXED, | 63 GPU_PROCESS_KIND_UNSANDBOXED, |
63 GPU_PROCESS_KIND_SANDBOXED, | 64 GPU_PROCESS_KIND_SANDBOXED, |
64 GPU_PROCESS_KIND_COUNT | 65 GPU_PROCESS_KIND_COUNT |
65 }; | 66 }; |
(...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
291 // Browser-side Mojo endpoint which sets up a Mojo channel with the child | 292 // Browser-side Mojo endpoint which sets up a Mojo channel with the child |
292 // process and contains the browser's ServiceRegistry. | 293 // process and contains the browser's ServiceRegistry. |
293 scoped_ptr<MojoApplicationHost> mojo_application_host_; | 294 scoped_ptr<MojoApplicationHost> mojo_application_host_; |
294 | 295 |
295 DISALLOW_COPY_AND_ASSIGN(GpuProcessHost); | 296 DISALLOW_COPY_AND_ASSIGN(GpuProcessHost); |
296 }; | 297 }; |
297 | 298 |
298 } // namespace content | 299 } // namespace content |
299 | 300 |
300 #endif // CONTENT_BROWSER_GPU_GPU_PROCESS_HOST_H_ | 301 #endif // CONTENT_BROWSER_GPU_GPU_PROCESS_HOST_H_ |
OLD | NEW |