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

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

Issue 12717013: Add reference-counting for mailbox textures. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: add optional 'pool' reference while textures are in mailbox Created 7 years, 8 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 | Annotate | Revision Log
« no previous file with comments | « content/common/gpu/gpu_channel.cc ('k') | content/common/gpu/gpu_channel_manager.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_MANAGER_H_ 5 #ifndef CONTENT_COMMON_GPU_GPU_CHANNEL_MANAGER_H_
6 #define CONTENT_COMMON_GPU_GPU_CHANNEL_MANAGER_H_ 6 #define CONTENT_COMMON_GPU_GPU_CHANNEL_MANAGER_H_
7 7
8 #include <deque> 8 #include <deque>
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
119 int32 client_id, 119 int32 client_id,
120 const GPUCreateCommandBufferConfig& init_params); 120 const GPUCreateCommandBufferConfig& init_params);
121 void CreateImage( 121 void CreateImage(
122 gfx::PluginWindowHandle window, int32 client_id, int32 image_id); 122 gfx::PluginWindowHandle window, int32 client_id, int32 image_id);
123 void OnCreateImage( 123 void OnCreateImage(
124 gfx::PluginWindowHandle window, int32 client_id, int32 image_id); 124 gfx::PluginWindowHandle window, int32 client_id, int32 image_id);
125 void DeleteImage(int32 client_id, int32 image_id); 125 void DeleteImage(int32 client_id, int32 image_id);
126 void OnDeleteImage(int32 client_id, int32 image_id, int32 sync_point); 126 void OnDeleteImage(int32 client_id, int32 image_id, int32 sync_point);
127 void OnDeleteImageSyncPointRetired(ImageOperation*); 127 void OnDeleteImageSyncPointRetired(ImageOperation*);
128 void OnLoadedShader(std::string shader); 128 void OnLoadedShader(std::string shader);
129 void OnDestroySurface(int client_id, int route_id, int surface_id);
129 130
130 void OnLoseAllContexts(); 131 void OnLoseAllContexts();
131 132
132 scoped_refptr<base::MessageLoopProxy> io_message_loop_; 133 scoped_refptr<base::MessageLoopProxy> io_message_loop_;
133 base::WaitableEvent* shutdown_event_; 134 base::WaitableEvent* shutdown_event_;
134 135
135 // Used to send and receive IPC messages from the browser process. 136 // Used to send and receive IPC messages from the browser process.
136 ChildThread* gpu_child_thread_; 137 ChildThread* gpu_child_thread_;
137 138
138 // These objects manage channels to individual renderer processes there is 139 // These objects manage channels to individual renderer processes there is
139 // one channel for each renderer process that has connected to this GPU 140 // one channel for each renderer process that has connected to this GPU
140 // process. 141 // process.
141 GpuChannelMap gpu_channels_; 142 GpuChannelMap gpu_channels_;
142 scoped_refptr<gfx::GLShareGroup> share_group_; 143 scoped_refptr<gfx::GLShareGroup> share_group_;
143 scoped_refptr<gpu::gles2::MailboxManager> mailbox_manager_; 144 scoped_refptr<gpu::gles2::MailboxManager> mailbox_manager_;
144 GpuMemoryManager gpu_memory_manager_; 145 GpuMemoryManager gpu_memory_manager_;
145 GpuWatchdog* watchdog_; 146 GpuWatchdog* watchdog_;
146 scoped_refptr<SyncPointManager> sync_point_manager_; 147 scoped_refptr<SyncPointManager> sync_point_manager_;
147 scoped_ptr<gpu::gles2::ProgramCache> program_cache_; 148 scoped_ptr<gpu::gles2::ProgramCache> program_cache_;
148 scoped_refptr<gfx::GLSurface> default_offscreen_surface_; 149 scoped_refptr<gfx::GLSurface> default_offscreen_surface_;
149 ImageOperationQueue image_operations_; 150 ImageOperationQueue image_operations_;
150 151
151 DISALLOW_COPY_AND_ASSIGN(GpuChannelManager); 152 DISALLOW_COPY_AND_ASSIGN(GpuChannelManager);
152 }; 153 };
153 154
154 } // namespace content 155 } // namespace content
155 156
156 #endif // CONTENT_COMMON_GPU_GPU_CHANNEL_MANAGER_H_ 157 #endif // CONTENT_COMMON_GPU_GPU_CHANNEL_MANAGER_H_
OLDNEW
« no previous file with comments | « content/common/gpu/gpu_channel.cc ('k') | content/common/gpu/gpu_channel_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698