Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(810)

Side by Side Diff: content/common/gpu/gpu_channel.h

Issue 1184523003: attachment broker wip (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Minor comments. Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « content/common/gpu/client/gpu_channel_host.cc ('k') | content/common/gpu/gpu_channel.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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_COMMON_GPU_GPU_CHANNEL_H_ 5 #ifndef CONTENT_COMMON_GPU_GPU_CHANNEL_H_
6 #define CONTENT_COMMON_GPU_GPU_CHANNEL_H_ 6 #define CONTENT_COMMON_GPU_GPU_CHANNEL_H_
7 7
8 #include <deque> 8 #include <deque>
9 #include <string> 9 #include <string>
10 10
(...skipping 24 matching lines...) Expand all
35 namespace gpu { 35 namespace gpu {
36 class PreemptionFlag; 36 class PreemptionFlag;
37 union ValueState; 37 union ValueState;
38 class ValueStateMap; 38 class ValueStateMap;
39 namespace gles2 { 39 namespace gles2 {
40 class SubscriptionRefSet; 40 class SubscriptionRefSet;
41 } 41 }
42 } 42 }
43 43
44 namespace IPC { 44 namespace IPC {
45 class AttachmentBroker;
45 class MessageFilter; 46 class MessageFilter;
46 } 47 }
47 48
48 namespace content { 49 namespace content {
49 class GpuChannelManager; 50 class GpuChannelManager;
50 class GpuChannelMessageFilter; 51 class GpuChannelMessageFilter;
51 class GpuWatchdog; 52 class GpuWatchdog;
52 53
53 // Encapsulates an IPC channel between the GPU process and one renderer 54 // Encapsulates an IPC channel between the GPU process and one renderer
54 // process. On the renderer side there's a corresponding GpuChannelHost. 55 // process. On the renderer side there's a corresponding GpuChannelHost.
55 class GpuChannel : public IPC::Listener, public IPC::Sender, 56 class GpuChannel : public IPC::Listener, public IPC::Sender,
56 public gpu::gles2::SubscriptionRefSet::Observer { 57 public gpu::gles2::SubscriptionRefSet::Observer {
57 public: 58 public:
58 // Takes ownership of the renderer process handle. 59 // Takes ownership of the renderer process handle.
59 GpuChannel(GpuChannelManager* gpu_channel_manager, 60 GpuChannel(GpuChannelManager* gpu_channel_manager,
60 GpuWatchdog* watchdog, 61 GpuWatchdog* watchdog,
61 gfx::GLShareGroup* share_group, 62 gfx::GLShareGroup* share_group,
62 gpu::gles2::MailboxManager* mailbox_manager, 63 gpu::gles2::MailboxManager* mailbox_manager,
63 int client_id, 64 int client_id,
64 bool software, 65 bool software,
65 bool allow_future_sync_points); 66 bool allow_future_sync_points);
66 ~GpuChannel() override; 67 ~GpuChannel() override;
67 68
68 void Init(base::SingleThreadTaskRunner* io_task_runner, 69 void Init(base::SingleThreadTaskRunner* io_task_runner,
69 base::WaitableEvent* shutdown_event); 70 base::WaitableEvent* shutdown_event,
71 IPC::AttachmentBroker* broker);
70 72
71 // Get the GpuChannelManager that owns this channel. 73 // Get the GpuChannelManager that owns this channel.
72 GpuChannelManager* gpu_channel_manager() const { 74 GpuChannelManager* gpu_channel_manager() const {
73 return gpu_channel_manager_; 75 return gpu_channel_manager_;
74 } 76 }
75 77
76 // Returns the name of the associated IPC channel. 78 // Returns the name of the associated IPC channel.
77 std::string GetChannelName(); 79 std::string GetChannelName();
78 80
79 #if defined(OS_POSIX) 81 #if defined(OS_POSIX)
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after
247 // that any WeakPtrs to Controller are invalidated before its members 249 // that any WeakPtrs to Controller are invalidated before its members
248 // variable's destructors are executed, rendering them invalid. 250 // variable's destructors are executed, rendering them invalid.
249 base::WeakPtrFactory<GpuChannel> weak_factory_; 251 base::WeakPtrFactory<GpuChannel> weak_factory_;
250 252
251 DISALLOW_COPY_AND_ASSIGN(GpuChannel); 253 DISALLOW_COPY_AND_ASSIGN(GpuChannel);
252 }; 254 };
253 255
254 } // namespace content 256 } // namespace content
255 257
256 #endif // CONTENT_COMMON_GPU_GPU_CHANNEL_H_ 258 #endif // CONTENT_COMMON_GPU_GPU_CHANNEL_H_
OLDNEW
« no previous file with comments | « content/common/gpu/client/gpu_channel_host.cc ('k') | content/common/gpu/gpu_channel.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698