UNPKG

strong-arc

Version:

A visual suite for the StrongLoop API Platform

74 lines (62 loc) 1.68 kB
// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. /** * @constructor * @extends {WebInspector.Object} */ WebInspector.PowerProfiler = function() { WebInspector.Object.call(this); this._dispatcher = new WebInspector.PowerDispatcher(this); PowerAgent.getAccuracyLevel(this._onAccuracyLevel.bind(this)); } WebInspector.PowerProfiler.EventTypes = { PowerEventRecorded: "PowerEventRecorded" } WebInspector.PowerProfiler.prototype = { startProfile: function () { PowerAgent.start(); }, stopProfile: function () { PowerAgent.end(); }, /** * @return {string} */ getAccuracyLevel: function() { return this._accuracyLevel; }, _onAccuracyLevel: function(error, result) { this._accuracyLevel = ""; if (error) { console.log("Unable to retrieve PowerProfiler accuracy level: " + error); return; } this._accuracyLevel = result; }, __proto__: WebInspector.Object.prototype } /** * @constructor * @implements {PowerAgent.Dispatcher} */ WebInspector.PowerDispatcher = function(profiler) { this._profiler = profiler; InspectorBackend.registerPowerDispatcher(this); } WebInspector.PowerDispatcher.prototype = { dataAvailable: function(events) { for (var i = 0; i < events.length; ++i) this._profiler.dispatchEventToListeners(WebInspector.PowerProfiler.EventTypes.PowerEventRecorded, events[i]); } } /** * @type {!WebInspector.PowerProfiler} */ WebInspector.powerProfiler;