| OLD | NEW |
| 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/renderer/gpu/gpu_benchmarking_extension.h" | 5 #include "content/renderer/gpu/gpu_benchmarking_extension.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 | 8 |
| 9 #include "base/file_path.h" | 9 #include "base/file_path.h" |
| 10 #include "base/file_util.h" | 10 #include "base/file_util.h" |
| (...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 130 return v8::FunctionTemplate::New(PrintToSkPicture); | 130 return v8::FunctionTemplate::New(PrintToSkPicture); |
| 131 if (name->Equals(v8::String::New("BeginSmoothScroll"))) | 131 if (name->Equals(v8::String::New("BeginSmoothScroll"))) |
| 132 return v8::FunctionTemplate::New(BeginSmoothScroll); | 132 return v8::FunctionTemplate::New(BeginSmoothScroll); |
| 133 if (name->Equals(v8::String::New("RunRenderingBenchmarks"))) | 133 if (name->Equals(v8::String::New("RunRenderingBenchmarks"))) |
| 134 return v8::FunctionTemplate::New(RunRenderingBenchmarks); | 134 return v8::FunctionTemplate::New(RunRenderingBenchmarks); |
| 135 | 135 |
| 136 return v8::Handle<v8::FunctionTemplate>(); | 136 return v8::Handle<v8::FunctionTemplate>(); |
| 137 } | 137 } |
| 138 | 138 |
| 139 static v8::Handle<v8::Value> GetRenderingStats(const v8::Arguments& args) { | 139 static v8::Handle<v8::Value> GetRenderingStats(const v8::Arguments& args) { |
| 140 |
| 140 WebFrame* web_frame = WebFrame::frameForEnteredContext(); | 141 WebFrame* web_frame = WebFrame::frameForEnteredContext(); |
| 141 if (!web_frame) | 142 if (!web_frame) |
| 142 return v8::Undefined(); | 143 return v8::Undefined(); |
| 143 | 144 |
| 144 WebView* web_view = web_frame->view(); | 145 WebView* web_view = web_frame->view(); |
| 145 if (!web_view) | 146 if (!web_view) |
| 146 return v8::Undefined(); | 147 return v8::Undefined(); |
| 147 | 148 |
| 148 RenderViewImpl* render_view_impl = RenderViewImpl::FromWebView(web_view); | 149 RenderViewImpl* render_view_impl = RenderViewImpl::FromWebView(web_view); |
| 149 if (!render_view_impl) | 150 if (!render_view_impl) |
| 150 return v8::Undefined(); | 151 return v8::Undefined(); |
| 151 | 152 |
| 152 WebRenderingStats stats; | 153 WebRenderingStats stats; |
| 153 render_view_impl->GetRenderingStats(stats); | 154 render_view_impl->GetRenderingStats(stats); |
| 154 | 155 |
| 155 content::GpuRenderingStats gpu_stats; | 156 content::GpuRenderingStats gpu_stats; |
| 156 render_view_impl->GetGpuRenderingStats(&gpu_stats); | 157 render_view_impl->GetGpuRenderingStats(&gpu_stats); |
| 157 | |
| 158 v8::Handle<v8::Object> stats_object = v8::Object::New(); | 158 v8::Handle<v8::Object> stats_object = v8::Object::New(); |
| 159 stats_object->Set(v8::String::New("numAnimationFrames"), | 159 stats_object->Set(v8::String::New("numAnimationFrames"), |
| 160 v8::Integer::New(stats.numAnimationFrames)); | 160 v8::Integer::New(stats.numAnimationFrames)); |
| 161 stats_object->Set(v8::String::New("numFramesSentToScreen"), | 161 stats_object->Set(v8::String::New("numFramesSentToScreen"), |
| 162 v8::Integer::New(stats.numFramesSentToScreen)); | 162 v8::Integer::New(stats.numFramesSentToScreen)); |
| 163 stats_object->Set(v8::String::New("droppedFrameCount"), | 163 stats_object->Set(v8::String::New("droppedFrameCount"), |
| 164 v8::Integer::New(stats.droppedFrameCount)); | 164 v8::Integer::New(stats.droppedFrameCount)); |
| 165 stats_object->Set(v8::String::New("totalPaintTimeInSeconds"), | 165 stats_object->Set(v8::String::New("totalPaintTimeInSeconds"), |
| 166 v8::Number::New(stats.totalPaintTimeInSeconds)); | 166 v8::Number::New(stats.totalPaintTimeInSeconds)); |
| 167 stats_object->Set(v8::String::New("totalRasterizeTimeInSeconds"), | 167 stats_object->Set(v8::String::New("totalRasterizeTimeInSeconds"), |
| 168 v8::Number::New(stats.totalRasterizeTimeInSeconds)); | 168 v8::Number::New(stats.totalRasterizeTimeInSeconds)); |
| 169 stats_object->Set(v8::String::New("totalCommitTimeInSeconds"), |
| 170 v8::Number::New(stats.totalCommitTimeInSeconds)); |
| 171 stats_object->Set(v8::String::New("totalCommitCount"), |
| 172 v8::Integer::New(stats.totalCommitCount)); |
| 173 |
| 169 stats_object->Set(v8::String::New("globalTextureUploadCount"), | 174 stats_object->Set(v8::String::New("globalTextureUploadCount"), |
| 170 v8::Number::New(gpu_stats.global_texture_upload_count)); | 175 v8::Number::New(gpu_stats.global_texture_upload_count)); |
| 171 stats_object->Set( | 176 stats_object->Set( |
| 172 v8::String::New("globalTotalTextureUploadTimeInSeconds"), | 177 v8::String::New("globalTotalTextureUploadTimeInSeconds"), |
| 173 v8::Number::New( | 178 v8::Number::New( |
| 174 gpu_stats.global_total_texture_upload_time.InSecondsF())); | 179 gpu_stats.global_total_texture_upload_time.InSecondsF())); |
| 175 stats_object->Set(v8::String::New("textureUploadCount"), | 180 stats_object->Set(v8::String::New("textureUploadCount"), |
| 176 v8::Number::New(gpu_stats.texture_upload_count)); | 181 v8::Number::New(gpu_stats.texture_upload_count)); |
| 177 stats_object->Set( | 182 stats_object->Set( |
| 178 v8::String::New("totalTextureUploadTimeInSeconds"), | 183 v8::String::New("totalTextureUploadTimeInSeconds"), |
| (...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 335 | 340 |
| 336 return results; | 341 return results; |
| 337 } | 342 } |
| 338 }; | 343 }; |
| 339 | 344 |
| 340 v8::Extension* GpuBenchmarkingExtension::Get() { | 345 v8::Extension* GpuBenchmarkingExtension::Get() { |
| 341 return new GpuBenchmarkingWrapper(); | 346 return new GpuBenchmarkingWrapper(); |
| 342 } | 347 } |
| 343 | 348 |
| 344 } // namespace content | 349 } // namespace content |
| OLD | NEW |