OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2014 The Chromium Authors. All rights reserved. | 2 * Copyright 2014 The Chromium Authors. All rights reserved. |
3 * Use of this source code is governed by a BSD-style license that can be | 3 * Use of this source code is governed by a BSD-style license that can be |
4 * found in the LICENSE file. | 4 * found in the LICENSE file. |
5 */ | 5 */ |
6 | 6 |
7 /** | 7 /** |
8 * @constructor | 8 * @constructor |
9 */ | 9 */ |
10 WebInspector.TracingModel = function() | 10 WebInspector.TracingModel = function() |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
43 } | 43 } |
44 | 44 |
45 WebInspector.TracingModel.DevToolsMetadataEventCategory = "disabled-by-default-d
evtools.timeline"; | 45 WebInspector.TracingModel.DevToolsMetadataEventCategory = "disabled-by-default-d
evtools.timeline"; |
46 | 46 |
47 WebInspector.TracingModel.ConsoleEventCategory = "blink.console"; | 47 WebInspector.TracingModel.ConsoleEventCategory = "blink.console"; |
48 | 48 |
49 WebInspector.TracingModel.FrameLifecycleEventCategory = "cc,devtools"; | 49 WebInspector.TracingModel.FrameLifecycleEventCategory = "cc,devtools"; |
50 | 50 |
51 WebInspector.TracingModel.DevToolsMetadataEvent = { | 51 WebInspector.TracingModel.DevToolsMetadataEvent = { |
52 TracingStartedInPage: "TracingStartedInPage", | 52 TracingStartedInPage: "TracingStartedInPage", |
53 TracingStartedInWorker: "TracingStartedInWorker", | 53 TracingSessionIdForWorker: "TracingSessionIdForWorker", |
54 }; | 54 }; |
55 | 55 |
56 /** | 56 /** |
57 * @param {string} phase | 57 * @param {string} phase |
58 * @return {boolean} | 58 * @return {boolean} |
59 */ | 59 */ |
60 WebInspector.TracingModel.isAsyncPhase = function(phase) | 60 WebInspector.TracingModel.isAsyncPhase = function(phase) |
61 { | 61 { |
62 return phase === WebInspector.TracingModel.Phase.AsyncBegin || phase === Web
Inspector.TracingModel.Phase.AsyncEnd || | 62 return phase === WebInspector.TracingModel.Phase.AsyncBegin || phase === Web
Inspector.TracingModel.Phase.AsyncEnd || |
63 phase === WebInspector.TracingModel.Phase.AsyncStepInto || phase === Web
Inspector.TracingModel.Phase.AsyncStepPast; | 63 phase === WebInspector.TracingModel.Phase.AsyncStepInto || phase === Web
Inspector.TracingModel.Phase.AsyncStepPast; |
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
151 // so there's a chance we're getting records from the past. | 151 // so there's a chance we're getting records from the past. |
152 if (timestamp && (!this._minimumRecordTime || timestamp < this._mini
mumRecordTime)) | 152 if (timestamp && (!this._minimumRecordTime || timestamp < this._mini
mumRecordTime)) |
153 this._minimumRecordTime = timestamp; | 153 this._minimumRecordTime = timestamp; |
154 var endTimeStamp = (payload.ts + (payload.dur || 0)) / 1000; | 154 var endTimeStamp = (payload.ts + (payload.dur || 0)) / 1000; |
155 this._maximumRecordTime = Math.max(this._maximumRecordTime, endTimeS
tamp); | 155 this._maximumRecordTime = Math.max(this._maximumRecordTime, endTimeS
tamp); |
156 var event = process._addEvent(payload); | 156 var event = process._addEvent(payload); |
157 if (event && event.name === WebInspector.TracingModel.DevToolsMetada
taEvent.TracingStartedInPage && | 157 if (event && event.name === WebInspector.TracingModel.DevToolsMetada
taEvent.TracingStartedInPage && |
158 event.category === WebInspector.TracingModel.DevToolsMetadataEve
ntCategory) { | 158 event.category === WebInspector.TracingModel.DevToolsMetadataEve
ntCategory) { |
159 this._devtoolsPageMetadataEvents.push(event); | 159 this._devtoolsPageMetadataEvents.push(event); |
160 } | 160 } |
161 if (event && event.name === WebInspector.TracingModel.DevToolsMetada
taEvent.TracingStartedInWorker && | 161 if (event && event.name === WebInspector.TracingModel.DevToolsMetada
taEvent.TracingSessionIdForWorker && |
162 event.category === WebInspector.TracingModel.DevToolsMetadataEve
ntCategory) { | 162 event.category === WebInspector.TracingModel.DevToolsMetadataEve
ntCategory) { |
163 this._devtoolsWorkerMetadataEvents.push(event); | 163 this._devtoolsWorkerMetadataEvents.push(event); |
164 } | 164 } |
165 return; | 165 return; |
166 } | 166 } |
167 switch (payload.name) { | 167 switch (payload.name) { |
168 case WebInspector.TracingModel.MetadataEvent.ProcessSortIndex: | 168 case WebInspector.TracingModel.MetadataEvent.ProcessSortIndex: |
169 process._setSortIndex(payload.args["sort_index"]); | 169 process._setSortIndex(payload.args["sort_index"]); |
170 break; | 170 break; |
171 case WebInspector.TracingModel.MetadataEvent.ProcessName: | 171 case WebInspector.TracingModel.MetadataEvent.ProcessName: |
(...skipping 14 matching lines...) Expand all Loading... |
186 if (!this._devtoolsPageMetadataEvents.length) { | 186 if (!this._devtoolsPageMetadataEvents.length) { |
187 WebInspector.console.error(WebInspector.TracingModel.DevToolsMetadat
aEvent.TracingStartedInPage + " event not found."); | 187 WebInspector.console.error(WebInspector.TracingModel.DevToolsMetadat
aEvent.TracingStartedInPage + " event not found."); |
188 return; | 188 return; |
189 } | 189 } |
190 var sessionId = this._devtoolsPageMetadataEvents[0].args["sessionId"]; | 190 var sessionId = this._devtoolsPageMetadataEvents[0].args["sessionId"]; |
191 this._sessionId = sessionId; | 191 this._sessionId = sessionId; |
192 | 192 |
193 var mismatchingIds = {}; | 193 var mismatchingIds = {}; |
194 function checkSessionId(event) | 194 function checkSessionId(event) |
195 { | 195 { |
196 var id = event.args["sessionId"]; | 196 var args = event.args; |
| 197 // FIXME: put sessionId into args["data"] for TracingStartedInPage e
vent. |
| 198 if (args["data"]) |
| 199 args = args["data"]; |
| 200 var id = args["sessionId"]; |
197 if (id === sessionId) | 201 if (id === sessionId) |
198 return true; | 202 return true; |
199 mismatchingIds[id] = true; | 203 mismatchingIds[id] = true; |
200 return false; | 204 return false; |
201 } | 205 } |
202 this._devtoolsPageMetadataEvents = this._devtoolsPageMetadataEvents.filt
er(checkSessionId); | 206 this._devtoolsPageMetadataEvents = this._devtoolsPageMetadataEvents.filt
er(checkSessionId); |
203 this._devtoolsWorkerMetadataEvents = this._devtoolsWorkerMetadataEvents.
filter(checkSessionId); | 207 this._devtoolsWorkerMetadataEvents = this._devtoolsWorkerMetadataEvents.
filter(checkSessionId); |
204 | 208 |
205 var idList = Object.keys(mismatchingIds); | 209 var idList = Object.keys(mismatchingIds); |
206 if (idList.length) | 210 if (idList.length) |
(...skipping 379 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
586 * @param {!WebInspector.TracingModel.Process} process | 590 * @param {!WebInspector.TracingModel.Process} process |
587 * @param {number} id | 591 * @param {number} id |
588 */ | 592 */ |
589 WebInspector.TracingModel.Thread = function(process, id) | 593 WebInspector.TracingModel.Thread = function(process, id) |
590 { | 594 { |
591 WebInspector.TracingModel.NamedObject.call(this); | 595 WebInspector.TracingModel.NamedObject.call(this); |
592 this._process = process; | 596 this._process = process; |
593 this._setName("Thread " + id); | 597 this._setName("Thread " + id); |
594 this._events = []; | 598 this._events = []; |
595 this._asyncEvents = []; | 599 this._asyncEvents = []; |
| 600 this._id = id; |
596 | 601 |
597 this._stack = []; | 602 this._stack = []; |
598 } | 603 } |
599 | 604 |
600 WebInspector.TracingModel.Thread.prototype = { | 605 WebInspector.TracingModel.Thread.prototype = { |
601 | 606 |
602 /** | 607 /** |
603 * @return {?WebInspector.Target} | 608 * @return {?WebInspector.Target} |
604 */ | 609 */ |
605 target: function() | 610 target: function() |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
637 | 642 |
638 /** | 643 /** |
639 * @param {!Array.<!WebInspector.TracingModel.Event>} eventSteps | 644 * @param {!Array.<!WebInspector.TracingModel.Event>} eventSteps |
640 */ | 645 */ |
641 _addAsyncEventSteps: function(eventSteps) | 646 _addAsyncEventSteps: function(eventSteps) |
642 { | 647 { |
643 this._asyncEvents.push(eventSteps); | 648 this._asyncEvents.push(eventSteps); |
644 }, | 649 }, |
645 | 650 |
646 /** | 651 /** |
| 652 * @return {number} |
| 653 */ |
| 654 id: function() |
| 655 { |
| 656 return this._id; |
| 657 }, |
| 658 |
| 659 /** |
647 * @return {!WebInspector.TracingModel.Process} | 660 * @return {!WebInspector.TracingModel.Process} |
648 */ | 661 */ |
649 process: function() | 662 process: function() |
650 { | 663 { |
651 return this._process; | 664 return this._process; |
652 }, | 665 }, |
653 | 666 |
654 /** | 667 /** |
655 * @return {!Array.<!WebInspector.TracingModel.Event>} | 668 * @return {!Array.<!WebInspector.TracingModel.Event>} |
656 */ | 669 */ |
657 events: function() | 670 events: function() |
658 { | 671 { |
659 return this._events; | 672 return this._events; |
660 }, | 673 }, |
661 | 674 |
662 /** | 675 /** |
663 * @return {!Array.<!WebInspector.TracingModel.Event>} | 676 * @return {!Array.<!WebInspector.TracingModel.Event>} |
664 */ | 677 */ |
665 asyncEvents: function() | 678 asyncEvents: function() |
666 { | 679 { |
667 return this._asyncEvents; | 680 return this._asyncEvents; |
668 }, | 681 }, |
669 | 682 |
670 __proto__: WebInspector.TracingModel.NamedObject.prototype | 683 __proto__: WebInspector.TracingModel.NamedObject.prototype |
671 } | 684 } |
OLD | NEW |