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

Side by Side Diff: trunk/src/content/browser/resources/media/data_series.js

Issue 15021010: Revert 199008 "Fixes a memory leak when running webrtc-internals..." (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 7 years, 7 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
« no previous file with comments | « no previous file | trunk/src/content/browser/resources/media/stats_graph_helper.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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 * A TimelineDataSeries collects an ordered series of (time, value) pairs, 6 * A TimelineDataSeries collects an ordered series of (time, value) pairs,
7 * and converts them to graph points. It also keeps track of its color and 7 * and converts them to graph points. It also keeps track of its color and
8 * current visibility state. 8 * current visibility state.
9 * It keeps MAX_STATS_DATA_POINT_BUFFER_SIZE data points at most. Old data
10 * points will be dropped when it reaches this size.
11 */ 9 */
12 var TimelineDataSeries = (function() { 10 var TimelineDataSeries = (function() {
13 'use strict'; 11 'use strict';
14 12
15 /** 13 /**
16 * @constructor 14 * @constructor
17 */ 15 */
18 function TimelineDataSeries() { 16 function TimelineDataSeries() {
19 // List of DataPoints in chronological order. 17 // List of DataPoints in chronological order.
20 this.dataPoints_ = []; 18 this.dataPoints_ = [];
21 19
22 // Default color. Should always be overridden prior to display. 20 // Default color. Should always be overridden prior to display.
23 this.color_ = 'red'; 21 this.color_ = 'red';
24 // Whether or not the data series should be drawn. 22 // Whether or not the data series should be drawn.
25 this.isVisible_ = true; 23 this.isVisible_ = true;
26 24
27 this.cacheStartTime_ = null; 25 this.cacheStartTime_ = null;
28 this.cacheStepSize_ = 0; 26 this.cacheStepSize_ = 0;
29 this.cacheValues_ = []; 27 this.cacheValues_ = [];
30 } 28 }
31 29
32 TimelineDataSeries.prototype = { 30 TimelineDataSeries.prototype = {
33 /** 31 /**
34 * Adds a DataPoint to |this| with the specified time and value. 32 * Adds a DataPoint to |this| with the specified time and value.
35 * DataPoints are assumed to be received in chronological order. 33 * DataPoints are assumed to be received in chronological order.
36 */ 34 */
37 addPoint: function(timeTicks, value) { 35 addPoint: function(timeTicks, value) {
38 var time = new Date(timeTicks); 36 var time = new Date(timeTicks);
39 this.dataPoints_.push(new DataPoint(time, value)); 37 this.dataPoints_.push(new DataPoint(time, value));
40
41 if (this.dataPoints_.length > MAX_STATS_DATA_POINT_BUFFER_SIZE)
42 this.dataPoints_.shift();
43 }, 38 },
44 39
45 isVisible: function() { 40 isVisible: function() {
46 return this.isVisible_; 41 return this.isVisible_;
47 }, 42 },
48 43
49 show: function(isVisible) { 44 show: function(isVisible) {
50 this.isVisible_ = isVisible; 45 this.isVisible_ = isVisible;
51 }, 46 },
52 47
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
105 * milliseconds since the Unix epoch, and a numeric value. 100 * milliseconds since the Unix epoch, and a numeric value.
106 * @constructor 101 * @constructor
107 */ 102 */
108 function DataPoint(time, value) { 103 function DataPoint(time, value) {
109 this.time = time; 104 this.time = time;
110 this.value = value; 105 this.value = value;
111 } 106 }
112 107
113 return TimelineDataSeries; 108 return TimelineDataSeries;
114 })(); 109 })();
OLDNEW
« no previous file with comments | « no previous file | trunk/src/content/browser/resources/media/stats_graph_helper.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698