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

Side by Side Diff: cc/gl_renderer.cc

Issue 11293121: Add latency measurement system (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: minor input event changes Created 8 years 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 2010 The Chromium Authors. All rights reserved. 1 // Copyright 2010 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 "cc/gl_renderer.h" 5 #include "cc/gl_renderer.h"
6 6
7 #include "base/debug/trace_event.h" 7 #include "base/debug/trace_event.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "base/string_split.h" 9 #include "base/string_split.h"
10 #include "base/string_util.h" 10 #include "base/string_util.h"
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
111 111
112 m_capabilities.usingSetVisibility = extensions.count("GL_CHROMIUM_set_visibi lity"); 112 m_capabilities.usingSetVisibility = extensions.count("GL_CHROMIUM_set_visibi lity");
113 113
114 if (extensions.count("GL_CHROMIUM_iosurface")) 114 if (extensions.count("GL_CHROMIUM_iosurface"))
115 DCHECK(extensions.count("GL_ARB_texture_rectangle")); 115 DCHECK(extensions.count("GL_ARB_texture_rectangle"));
116 116
117 m_capabilities.usingGpuMemoryManager = extensions.count("GL_CHROMIUM_gpu_mem ory_manager"); 117 m_capabilities.usingGpuMemoryManager = extensions.count("GL_CHROMIUM_gpu_mem ory_manager");
118 if (m_capabilities.usingGpuMemoryManager) 118 if (m_capabilities.usingGpuMemoryManager)
119 m_context->setMemoryAllocationChangedCallbackCHROMIUM(this); 119 m_context->setMemoryAllocationChangedCallbackCHROMIUM(this);
120 120
121 m_context->setLatencyInfoCallbackCHROMIUM(this);
122
121 m_capabilities.usingDiscardBackbuffer = extensions.count("GL_CHROMIUM_discar d_backbuffer"); 123 m_capabilities.usingDiscardBackbuffer = extensions.count("GL_CHROMIUM_discar d_backbuffer");
122 124
123 m_capabilities.usingEglImage = extensions.count("GL_OES_EGL_image_external") ; 125 m_capabilities.usingEglImage = extensions.count("GL_OES_EGL_image_external") ;
124 126
125 m_capabilities.maxTextureSize = m_resourceProvider->maxTextureSize(); 127 m_capabilities.maxTextureSize = m_resourceProvider->maxTextureSize();
126 m_capabilities.bestTextureFormat = m_resourceProvider->bestTextureFormat(); 128 m_capabilities.bestTextureFormat = m_resourceProvider->bestTextureFormat();
127 129
128 // The updater can access textures while the GLRenderer is using them. 130 // The updater can access textures while the GLRenderer is using them.
129 m_capabilities.allowPartialTextureUpdates = true; 131 m_capabilities.allowPartialTextureUpdates = true;
130 132
(...skipping 1133 matching lines...) Expand 10 before | Expand all | Expand 10 after
1264 m_swapBufferRect = gfx::Rect(); 1266 m_swapBufferRect = gfx::Rect();
1265 1267
1266 return true; 1268 return true;
1267 } 1269 }
1268 1270
1269 void GLRenderer::onSwapBuffersComplete() 1271 void GLRenderer::onSwapBuffersComplete()
1270 { 1272 {
1271 m_client->onSwapBuffersComplete(); 1273 m_client->onSwapBuffersComplete();
1272 } 1274 }
1273 1275
1276 void GLRenderer::setLatencyInfo(const WebKit::WebLatencyInfoImpl& latency_info)
1277 {
1278 m_context->setLatencyInfoCHROMIUM(static_cast<const WebKit::WebLatencyInfo&> (latency_info));
1279 }
1280
1281 void GLRenderer::onReceivedLatencyInfo(const WebKit::WebLatencyInfo& latency_inf o)
1282 {
1283 m_client->onReceivedLatencyInfo(static_cast<const WebKit::WebLatencyInfoImpl &>(latency_info));
1284 }
1285
1274 void GLRenderer::onMemoryAllocationChanged(WebGraphicsMemoryAllocation allocatio n) 1286 void GLRenderer::onMemoryAllocationChanged(WebGraphicsMemoryAllocation allocatio n)
1275 { 1287 {
1276 // Just ignore the memory manager when it says to set the limit to zero 1288 // Just ignore the memory manager when it says to set the limit to zero
1277 // bytes. This will happen when the memory manager thinks that the renderer 1289 // bytes. This will happen when the memory manager thinks that the renderer
1278 // is not visible (which the renderer knows better). 1290 // is not visible (which the renderer knows better).
1279 if (allocation.bytesLimitWhenVisible) { 1291 if (allocation.bytesLimitWhenVisible) {
1280 ManagedMemoryPolicy policy( 1292 ManagedMemoryPolicy policy(
1281 allocation.bytesLimitWhenVisible, 1293 allocation.bytesLimitWhenVisible,
1282 priorityCutoffValue(allocation.priorityCutoffWhenVisible), 1294 priorityCutoffValue(allocation.priorityCutoffWhenVisible),
1283 allocation.bytesLimitWhenNotVisible, 1295 allocation.bytesLimitWhenNotVisible,
(...skipping 464 matching lines...) Expand 10 before | Expand all | Expand 10 after
1748 1760
1749 releaseRenderPassTextures(); 1761 releaseRenderPassTextures();
1750 } 1762 }
1751 1763
1752 bool GLRenderer::isContextLost() 1764 bool GLRenderer::isContextLost()
1753 { 1765 {
1754 return (m_context->getGraphicsResetStatusARB() != GL_NO_ERROR); 1766 return (m_context->getGraphicsResetStatusARB() != GL_NO_ERROR);
1755 } 1767 }
1756 1768
1757 } // namespace cc 1769 } // namespace cc
OLDNEW
« cc/gl_renderer.h ('K') | « cc/gl_renderer.h ('k') | cc/gl_renderer_pixeltest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698