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

Side by Side Diff: chrome/browser/resources/tracing/timeline_track.js

Issue 7555005: Moving the contents of chrome://gpu Profiling to chrome://tracing. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 9 years, 4 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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 5
6 /** 6 /**
7 * @fileoverview Renders an array of slices into the provided div, 7 * @fileoverview Renders an array of slices into the provided div,
8 * using a child canvas element. Uses a FastRectRenderer to draw only 8 * using a child canvas element. Uses a FastRectRenderer to draw only
9 * the visible slices. 9 * the visible slices.
10 */ 10 */
11 cr.define('gpu', function() { 11 cr.define('tracing', function() {
12 12
13 const palletteBase = [ 13 const palletteBase = [
14 {r: 138, g: 113, b: 152}, 14 {r: 138, g: 113, b: 152},
15 {r: 175, g: 112, b: 133}, 15 {r: 175, g: 112, b: 133},
16 {r: 127, g: 135, b: 225}, 16 {r: 127, g: 135, b: 225},
17 {r: 93, g: 81, b: 137}, 17 {r: 93, g: 81, b: 137},
18 {r: 116, g: 143, b: 119}, 18 {r: 116, g: 143, b: 119},
19 {r: 178, g: 214, b: 122}, 19 {r: 178, g: 214, b: 122},
20 {r: 87, g: 109, b: 147}, 20 {r: 87, g: 109, b: 147},
21 {r: 119, g: 155, b: 95}, 21 {r: 119, g: 155, b: 95},
(...skipping 255 matching lines...) Expand 10 before | Expand all | Expand 10 after
277 } 277 }
278 ctx.strokeStyle = 'rgba(255,0,0,0.25)'; 278 ctx.strokeStyle = 'rgba(255,0,0,0.25)';
279 ctx.stroke(); 279 ctx.stroke();
280 } 280 }
281 281
282 // begin rendering in world space 282 // begin rendering in world space
283 ctx.save(); 283 ctx.save();
284 vp.applyTransformToCanavs(ctx); 284 vp.applyTransformToCanavs(ctx);
285 285
286 // tracks 286 // tracks
287 var tr = new gpu.FastRectRenderer(ctx, viewLWorld, 2 * pixWidth, 287 var tr = new tracing.FastRectRenderer(ctx, viewLWorld, 2 * pixWidth,
288 2 * pixWidth, viewRWorld, pallette); 288 2 * pixWidth, viewRWorld, pallette);
289 tr.setYandH(0, canvasH); 289 tr.setYandH(0, canvasH);
290 var slices = this.slices_; 290 var slices = this.slices_;
291 for (var i = 0; i < slices.length; ++i) { 291 for (var i = 0; i < slices.length; ++i) {
292 var slice = slices[i]; 292 var slice = slices[i];
293 var x = slice.start; 293 var x = slice.start;
294 // Less than 0.001 causes short events to disappear when zoomed in. 294 // Less than 0.001 causes short events to disappear when zoomed in.
295 var w = Math.max(slice.duration, 0.001); 295 var w = Math.max(slice.duration, 0.001);
296 var colorId; 296 var colorId;
297 colorId = slice.selected ? 297 colorId = slice.selected ?
298 slice.colorId + selectedIdBoost : 298 slice.colorId + selectedIdBoost :
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
360 * @param {number} wY Y location to search at, in offset space. 360 * @param {number} wY Y location to search at, in offset space.
361 * offset space. 361 * offset space.
362 * @param {function():*} onHitCallback Callback to call with the slice, 362 * @param {function():*} onHitCallback Callback to call with the slice,
363 * if one is found. 363 * if one is found.
364 * @return {boolean} true if a slice was found, otherwise false. 364 * @return {boolean} true if a slice was found, otherwise false.
365 */ 365 */
366 pick: function(wX, wY, onHitCallback) { 366 pick: function(wX, wY, onHitCallback) {
367 var clientRect = this.getBoundingClientRect(); 367 var clientRect = this.getBoundingClientRect();
368 if (wY < clientRect.top || wY >= clientRect.bottom) 368 if (wY < clientRect.top || wY >= clientRect.bottom)
369 return false; 369 return false;
370 var x = gpu.findLowIndexInSortedIntervals(this.slices_, 370 var x = tracing.findLowIndexInSortedIntervals(this.slices_,
371 function(x) { return x.start; }, 371 function(x) { return x.start; },
372 function(x) { return x.duration; }, 372 function(x) { return x.duration; },
373 wX); 373 wX);
374 if (x >= 0 && x < this.slices_.length) { 374 if (x >= 0 && x < this.slices_.length) {
375 onHitCallback('slice', this, this.slices_[x]); 375 onHitCallback('slice', this, this.slices_[x]);
376 return true; 376 return true;
377 } 377 }
378 return false; 378 return false;
379 }, 379 },
380 380
(...skipping 14 matching lines...) Expand all
395 var clientRect = this.getBoundingClientRect(); 395 var clientRect = this.getBoundingClientRect();
396 var a = Math.max(loY, clientRect.top); 396 var a = Math.max(loY, clientRect.top);
397 var b = Math.min(hiY, clientRect.bottom); 397 var b = Math.min(hiY, clientRect.bottom);
398 if (a > b) 398 if (a > b)
399 return; 399 return;
400 400
401 var that = this; 401 var that = this;
402 function onPickHit(slice) { 402 function onPickHit(slice) {
403 onHitCallback('slice', that, slice); 403 onHitCallback('slice', that, slice);
404 } 404 }
405 gpu.iterateOverIntersectingIntervals(this.slices_, 405 tracing.iterateOverIntersectingIntervals(this.slices_,
406 function(x) { return x.start; }, 406 function(x) { return x.start; },
407 function(x) { return x.duration; }, 407 function(x) { return x.duration; },
408 loWX, hiWX, 408 loWX, hiWX,
409 onPickHit); 409 onPickHit);
410 }, 410 },
411 411
412 /** 412 /**
413 * Find the index for the given slice. 413 * Find the index for the given slice.
414 * @return {index} Index of the given slice, or undefined. 414 * @return {index} Index of the given slice, or undefined.
415 * @private 415 * @private
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
457 return index != undefined ? this.slices_[index] : undefined; 457 return index != undefined ? this.slices_[index] : undefined;
458 }, 458 },
459 459
460 }; 460 };
461 461
462 return { 462 return {
463 TimelineSliceTrack: TimelineSliceTrack, 463 TimelineSliceTrack: TimelineSliceTrack,
464 TimelineThreadTrack: TimelineThreadTrack 464 TimelineThreadTrack: TimelineThreadTrack
465 }; 465 };
466 }); 466 });
OLDNEW
« no previous file with comments | « chrome/browser/resources/tracing/timeline_model.js ('k') | chrome/browser/resources/tracing/timeline_view.css » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698