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

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

Issue 10543125: gpu: Add support for GLX_EXT_texture_from_pixmap extension. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add kGLImplementationMockGL case to gl_image_android.cc. Created 8 years, 2 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
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 #include <vector> 10 #include <vector>
(...skipping 21 matching lines...) Expand all
32 struct GPUCreateCommandBufferConfig; 32 struct GPUCreateCommandBufferConfig;
33 class GpuWatchdog; 33 class GpuWatchdog;
34 34
35 namespace base { 35 namespace base {
36 class MessageLoopProxy; 36 class MessageLoopProxy;
37 class WaitableEvent; 37 class WaitableEvent;
38 } 38 }
39 39
40 namespace gpu { 40 namespace gpu {
41 struct RefCountedCounter; 41 struct RefCountedCounter;
42 namespace gles2 {
43 class ImageManager;
44 }
42 } 45 }
43 46
44 #if defined(OS_ANDROID) 47 #if defined(OS_ANDROID)
45 namespace content { 48 namespace content {
46 class StreamTextureManagerAndroid; 49 class StreamTextureManagerAndroid;
47 } 50 }
48 #endif 51 #endif
49 52
50 // Encapsulates an IPC channel between the GPU process and one renderer 53 // Encapsulates an IPC channel between the GPU process and one renderer
51 // process. On the renderer side there's a corresponding GpuChannelHost. 54 // process. On the renderer side there's a corresponding GpuChannelHost.
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
93 // transitions from the unscheduled to the scheduled state. When this occurs 96 // transitions from the unscheduled to the scheduled state. When this occurs
94 // deferred IPC messaged are handled. 97 // deferred IPC messaged are handled.
95 void OnScheduled(); 98 void OnScheduled();
96 99
97 void CreateViewCommandBuffer( 100 void CreateViewCommandBuffer(
98 const gfx::GLSurfaceHandle& window, 101 const gfx::GLSurfaceHandle& window,
99 int32 surface_id, 102 int32 surface_id,
100 const GPUCreateCommandBufferConfig& init_params, 103 const GPUCreateCommandBufferConfig& init_params,
101 int32* route_id); 104 int32* route_id);
102 105
106 void CreateImage(
107 gfx::PluginWindowHandle window,
108 int32 image_id,
109 gfx::Size* size);
110 void DeleteImage(int32 image_id);
111
103 gfx::GLShareGroup* share_group() const { return share_group_.get(); } 112 gfx::GLShareGroup* share_group() const { return share_group_.get(); }
104 113
105 GpuCommandBufferStub* LookupCommandBuffer(int32 route_id); 114 GpuCommandBufferStub* LookupCommandBuffer(int32 route_id);
106 115
107 void LoseAllContexts(); 116 void LoseAllContexts();
108 117
109 // Destroy channel and all contained contexts. 118 // Destroy channel and all contained contexts.
110 void DestroySoon(); 119 void DestroySoon();
111 120
112 // Generate a route ID guaranteed to be unique for this channel. 121 // Generate a route ID guaranteed to be unique for this channel.
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
191 std::string channel_id_; 200 std::string channel_id_;
192 201
193 // Used to implement message routing functionality to CommandBuffer objects 202 // Used to implement message routing functionality to CommandBuffer objects
194 MessageRouter router_; 203 MessageRouter router_;
195 204
196 // The share group that all contexts associated with a particular renderer 205 // The share group that all contexts associated with a particular renderer
197 // process use. 206 // process use.
198 scoped_refptr<gfx::GLShareGroup> share_group_; 207 scoped_refptr<gfx::GLShareGroup> share_group_;
199 208
200 scoped_refptr<gpu::gles2::MailboxManager> mailbox_manager_; 209 scoped_refptr<gpu::gles2::MailboxManager> mailbox_manager_;
210 scoped_refptr<gpu::gles2::ImageManager> image_manager_;
201 211
202 #if defined(ENABLE_GPU) 212 #if defined(ENABLE_GPU)
203 typedef IDMap<GpuCommandBufferStub, IDMapOwnPointer> StubMap; 213 typedef IDMap<GpuCommandBufferStub, IDMapOwnPointer> StubMap;
204 StubMap stubs_; 214 StubMap stubs_;
205 #endif // defined (ENABLE_GPU) 215 #endif // defined (ENABLE_GPU)
206 216
207 bool log_messages_; // True if we should log sent and received messages. 217 bool log_messages_; // True if we should log sent and received messages.
208 gpu::gles2::DisallowedFeatures disallowed_features_; 218 gpu::gles2::DisallowedFeatures disallowed_features_;
209 GpuWatchdog* watchdog_; 219 GpuWatchdog* watchdog_;
210 bool software_; 220 bool software_;
211 bool handle_messages_scheduled_; 221 bool handle_messages_scheduled_;
212 bool processed_get_state_fast_; 222 bool processed_get_state_fast_;
213 223
214 #if defined(OS_ANDROID) 224 #if defined(OS_ANDROID)
215 scoped_ptr<content::StreamTextureManagerAndroid> stream_texture_manager_; 225 scoped_ptr<content::StreamTextureManagerAndroid> stream_texture_manager_;
216 #endif 226 #endif
217 227
218 base::WeakPtrFactory<GpuChannel> weak_factory_; 228 base::WeakPtrFactory<GpuChannel> weak_factory_;
219 229
220 DISALLOW_COPY_AND_ASSIGN(GpuChannel); 230 DISALLOW_COPY_AND_ASSIGN(GpuChannel);
221 }; 231 };
222 232
223 #endif // CONTENT_COMMON_GPU_GPU_CHANNEL_H_ 233 #endif // CONTENT_COMMON_GPU_GPU_CHANNEL_H_
OLDNEW
« no previous file with comments | « content/common/gpu/client/webgraphicscontext3d_command_buffer_impl.cc ('k') | content/common/gpu/gpu_channel.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698