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_BROWSER_GPU_CHANNEL_HOST_FACTORY_H_ | 5 #ifndef CONTENT_BROWSER_GPU_BROWSER_GPU_CHANNEL_HOST_FACTORY_H_ |
6 #define CONTENT_BROWSER_GPU_BROWSER_GPU_CHANNEL_HOST_FACTORY_H_ | 6 #define CONTENT_BROWSER_GPU_BROWSER_GPU_CHANNEL_HOST_FACTORY_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include "base/memory/ref_counted.h" | 9 #include "base/memory/ref_counted.h" |
10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
(...skipping 30 matching lines...) Expand all Loading... |
41 ~CreateRequest(); | 41 ~CreateRequest(); |
42 base::WaitableEvent event; | 42 base::WaitableEvent event; |
43 int32 route_id; | 43 int32 route_id; |
44 }; | 44 }; |
45 | 45 |
46 struct EstablishRequest { | 46 struct EstablishRequest { |
47 EstablishRequest(); | 47 EstablishRequest(); |
48 ~EstablishRequest(); | 48 ~EstablishRequest(); |
49 base::WaitableEvent event; | 49 base::WaitableEvent event; |
50 IPC::ChannelHandle channel_handle; | 50 IPC::ChannelHandle channel_handle; |
51 base::ProcessHandle gpu_process_handle; | |
52 GPUInfo gpu_info; | 51 GPUInfo gpu_info; |
53 }; | 52 }; |
54 | 53 |
55 BrowserGpuChannelHostFactory(); | 54 BrowserGpuChannelHostFactory(); |
56 virtual ~BrowserGpuChannelHostFactory(); | 55 virtual ~BrowserGpuChannelHostFactory(); |
57 | 56 |
58 void CreateViewCommandBufferOnIO( | 57 void CreateViewCommandBufferOnIO( |
59 CreateRequest* request, | 58 CreateRequest* request, |
60 int32 surface_id, | 59 int32 surface_id, |
61 const GPUCreateCommandBufferConfig& init_params); | 60 const GPUCreateCommandBufferConfig& init_params); |
62 static void CommandBufferCreatedOnIO(CreateRequest* request, int32 route_id); | 61 static void CommandBufferCreatedOnIO(CreateRequest* request, int32 route_id); |
63 void EstablishGpuChannelOnIO(EstablishRequest* request, | 62 void EstablishGpuChannelOnIO(EstablishRequest* request, |
64 CauseForGpuLaunch cause_for_gpu_launch); | 63 CauseForGpuLaunch cause_for_gpu_launch); |
65 static void GpuChannelEstablishedOnIO( | 64 static void GpuChannelEstablishedOnIO( |
66 EstablishRequest* request, | 65 EstablishRequest* request, |
67 const IPC::ChannelHandle& channel_handle, | 66 const IPC::ChannelHandle& channel_handle, |
68 base::ProcessHandle gpu_process_handle, | |
69 const GPUInfo& gpu_info); | 67 const GPUInfo& gpu_info); |
70 | 68 |
71 int gpu_client_id_; | 69 int gpu_client_id_; |
72 scoped_ptr<base::WaitableEvent> shutdown_event_; | 70 scoped_ptr<base::WaitableEvent> shutdown_event_; |
73 scoped_refptr<GpuChannelHost> gpu_channel_; | 71 scoped_refptr<GpuChannelHost> gpu_channel_; |
74 int gpu_host_id_; | 72 int gpu_host_id_; |
75 | 73 |
76 static BrowserGpuChannelHostFactory* instance_; | 74 static BrowserGpuChannelHostFactory* instance_; |
77 | 75 |
78 DISALLOW_COPY_AND_ASSIGN(BrowserGpuChannelHostFactory); | 76 DISALLOW_COPY_AND_ASSIGN(BrowserGpuChannelHostFactory); |
79 }; | 77 }; |
80 | 78 |
81 } // namespace content | 79 } // namespace content |
82 | 80 |
83 #endif // CONTENT_BROWSER_GPU_BROWSER_GPU_CHANNEL_HOST_FACTORY_H_ | 81 #endif // CONTENT_BROWSER_GPU_BROWSER_GPU_CHANNEL_HOST_FACTORY_H_ |
OLD | NEW |