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

Side by Side Diff: content/common/gpu/image_transport_surface.cc

Issue 636003002: Clean up GPU back-pressure with remote CALayers (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: O(1) more compile issue Created 6 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
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 #include "content/common/gpu/image_transport_surface.h" 5 #include "content/common/gpu/image_transport_surface.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/bind_helpers.h" 8 #include "base/bind_helpers.h"
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/debug/trace_event.h" 10 #include "base/debug/trace_event.h"
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
79 79
80 manager_->Send(new GpuHostMsg_AcceleratedSurfaceInitialized( 80 manager_->Send(new GpuHostMsg_AcceleratedSurfaceInitialized(
81 stub_->surface_id(), route_id_)); 81 stub_->surface_id(), route_id_));
82 82
83 return true; 83 return true;
84 } 84 }
85 85
86 bool ImageTransportHelper::OnMessageReceived(const IPC::Message& message) { 86 bool ImageTransportHelper::OnMessageReceived(const IPC::Message& message) {
87 bool handled = true; 87 bool handled = true;
88 IPC_BEGIN_MESSAGE_MAP(ImageTransportHelper, message) 88 IPC_BEGIN_MESSAGE_MAP(ImageTransportHelper, message)
89 #if defined(OS_MACOSX)
89 IPC_MESSAGE_HANDLER(AcceleratedSurfaceMsg_BufferPresented, 90 IPC_MESSAGE_HANDLER(AcceleratedSurfaceMsg_BufferPresented,
90 OnBufferPresented) 91 OnBufferPresented)
92 #endif
91 IPC_MESSAGE_HANDLER(AcceleratedSurfaceMsg_WakeUpGpu, OnWakeUpGpu); 93 IPC_MESSAGE_HANDLER(AcceleratedSurfaceMsg_WakeUpGpu, OnWakeUpGpu);
92 IPC_MESSAGE_UNHANDLED(handled = false) 94 IPC_MESSAGE_UNHANDLED(handled = false)
93 IPC_END_MESSAGE_MAP() 95 IPC_END_MESSAGE_MAP()
94 return handled; 96 return handled;
95 } 97 }
96 98
97 void ImageTransportHelper::SendAcceleratedSurfaceBuffersSwapped( 99 void ImageTransportHelper::SendAcceleratedSurfaceBuffersSwapped(
98 GpuHostMsg_AcceleratedSurfaceBuffersSwapped_Params params) { 100 GpuHostMsg_AcceleratedSurfaceBuffersSwapped_Params params) {
99 // TRACE_EVENT for gpu tests: 101 // TRACE_EVENT for gpu tests:
100 TRACE_EVENT_INSTANT2("test_gpu", "SwapBuffers", 102 TRACE_EVENT_INSTANT2("test_gpu", "SwapBuffers",
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
165 return NULL; 167 return NULL;
166 return stub_->scheduler(); 168 return stub_->scheduler();
167 } 169 }
168 170
169 gpu::gles2::GLES2Decoder* ImageTransportHelper::Decoder() { 171 gpu::gles2::GLES2Decoder* ImageTransportHelper::Decoder() {
170 if (!stub_.get()) 172 if (!stub_.get())
171 return NULL; 173 return NULL;
172 return stub_->decoder(); 174 return stub_->decoder();
173 } 175 }
174 176
177 #if defined(OS_MACOSX)
175 void ImageTransportHelper::OnBufferPresented( 178 void ImageTransportHelper::OnBufferPresented(
176 const AcceleratedSurfaceMsg_BufferPresented_Params& params) { 179 const AcceleratedSurfaceMsg_BufferPresented_Params& params) {
177 surface_->OnBufferPresented(params); 180 surface_->OnBufferPresented(params);
178 } 181 }
182 #endif
179 183
180 void ImageTransportHelper::OnWakeUpGpu() { 184 void ImageTransportHelper::OnWakeUpGpu() {
181 surface_->WakeUpGpu(); 185 surface_->WakeUpGpu();
182 } 186 }
183 187
184 void ImageTransportHelper::Resize(gfx::Size size, float scale_factor) { 188 void ImageTransportHelper::Resize(gfx::Size size, float scale_factor) {
185 surface_->OnResize(size, scale_factor); 189 surface_->OnResize(size, scale_factor);
186 190
187 #if defined(OS_ANDROID) 191 #if defined(OS_ANDROID)
188 manager_->gpu_memory_manager()->ScheduleManage( 192 manager_->gpu_memory_manager()->ScheduleManage(
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
256 } 260 }
257 261
258 bool PassThroughImageTransportSurface::OnMakeCurrent(gfx::GLContext* context) { 262 bool PassThroughImageTransportSurface::OnMakeCurrent(gfx::GLContext* context) {
259 if (!did_set_swap_interval_) { 263 if (!did_set_swap_interval_) {
260 ImageTransportHelper::SetSwapInterval(context); 264 ImageTransportHelper::SetSwapInterval(context);
261 did_set_swap_interval_ = true; 265 did_set_swap_interval_ = true;
262 } 266 }
263 return true; 267 return true;
264 } 268 }
265 269
270 #if defined(OS_MACOSX)
266 void PassThroughImageTransportSurface::OnBufferPresented( 271 void PassThroughImageTransportSurface::OnBufferPresented(
267 const AcceleratedSurfaceMsg_BufferPresented_Params& /* params */) { 272 const AcceleratedSurfaceMsg_BufferPresented_Params& /* params */) {
268 NOTREACHED(); 273 NOTREACHED();
269 } 274 }
275 #endif
270 276
271 void PassThroughImageTransportSurface::OnResize(gfx::Size size, 277 void PassThroughImageTransportSurface::OnResize(gfx::Size size,
272 float scale_factor) { 278 float scale_factor) {
273 Resize(size); 279 Resize(size);
274 } 280 }
275 281
276 gfx::Size PassThroughImageTransportSurface::GetSize() { 282 gfx::Size PassThroughImageTransportSurface::GetSize() {
277 return GLSurfaceAdapter::GetSize(); 283 return GLSurfaceAdapter::GetSize();
278 } 284 }
279 285
280 void PassThroughImageTransportSurface::WakeUpGpu() { 286 void PassThroughImageTransportSurface::WakeUpGpu() {
281 NOTIMPLEMENTED(); 287 NOTIMPLEMENTED();
282 } 288 }
283 289
284 PassThroughImageTransportSurface::~PassThroughImageTransportSurface() {} 290 PassThroughImageTransportSurface::~PassThroughImageTransportSurface() {}
285 291
286 void PassThroughImageTransportSurface::SendVSyncUpdateIfAvailable() { 292 void PassThroughImageTransportSurface::SendVSyncUpdateIfAvailable() {
287 gfx::VSyncProvider* vsync_provider = GetVSyncProvider(); 293 gfx::VSyncProvider* vsync_provider = GetVSyncProvider();
288 if (vsync_provider) { 294 if (vsync_provider) {
289 vsync_provider->GetVSyncParameters( 295 vsync_provider->GetVSyncParameters(
290 base::Bind(&ImageTransportHelper::SendUpdateVSyncParameters, 296 base::Bind(&ImageTransportHelper::SendUpdateVSyncParameters,
291 helper_->AsWeakPtr())); 297 helper_->AsWeakPtr()));
292 } 298 }
293 } 299 }
294 300
295 } // namespace content 301 } // namespace content
OLDNEW
« no previous file with comments | « content/common/gpu/image_transport_surface.h ('k') | content/common/gpu/image_transport_surface_calayer_mac.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698