12da489cd246702bee5938545b18a6f710ed214bcJamie Gennis// Copyright (c) 2012 The Chromium Authors. All rights reserved. 22da489cd246702bee5938545b18a6f710ed214bcJamie Gennis// Use of this source code is governed by a BSD-style license that can be 32da489cd246702bee5938545b18a6f710ed214bcJamie Gennis// found in the LICENSE file. 42da489cd246702bee5938545b18a6f710ed214bcJamie Gennis 52da489cd246702bee5938545b18a6f710ed214bcJamie Gennis'use strict'; 62da489cd246702bee5938545b18a6f710ed214bcJamie Gennis 76833e18b1d4077bf3a727b4422cc2acdbeee35a7Jamie Gennisbase.require('tracing.trace_model.trace_model_event'); 86833e18b1d4077bf3a727b4422cc2acdbeee35a7Jamie Gennis 92da489cd246702bee5938545b18a6f710ed214bcJamie Gennis/** 1088448d9ae4dfff1805045790ef5f32495d62abccJeff Brown * @fileoverview Provides the Slice class. 112da489cd246702bee5938545b18a6f710ed214bcJamie Gennis */ 1266a37686207944273ced825e0e8b6b6375f8c3deJamie Gennisbase.exportTo('tracing.trace_model', function() { 132da489cd246702bee5938545b18a6f710ed214bcJamie Gennis /** 1488448d9ae4dfff1805045790ef5f32495d62abccJeff Brown * A Slice represents an interval of time plus parameters associated 152da489cd246702bee5938545b18a6f710ed214bcJamie Gennis * with that interval. 162da489cd246702bee5938545b18a6f710ed214bcJamie Gennis * 172da489cd246702bee5938545b18a6f710ed214bcJamie Gennis * @constructor 182da489cd246702bee5938545b18a6f710ed214bcJamie Gennis */ 1988448d9ae4dfff1805045790ef5f32495d62abccJeff Brown function Slice(category, title, colorId, start, args, opt_duration) { 206833e18b1d4077bf3a727b4422cc2acdbeee35a7Jamie Gennis tracing.trace_model.TraceModelEvent. 216833e18b1d4077bf3a727b4422cc2acdbeee35a7Jamie Gennis call(this, category, title, colorId, start, args); 226833e18b1d4077bf3a727b4422cc2acdbeee35a7Jamie Gennis 232da489cd246702bee5938545b18a6f710ed214bcJamie Gennis if (opt_duration !== undefined) 242da489cd246702bee5938545b18a6f710ed214bcJamie Gennis this.duration = opt_duration; 252da489cd246702bee5938545b18a6f710ed214bcJamie Gennis } 262da489cd246702bee5938545b18a6f710ed214bcJamie Gennis 2788448d9ae4dfff1805045790ef5f32495d62abccJeff Brown Slice.prototype = { 286833e18b1d4077bf3a727b4422cc2acdbeee35a7Jamie Gennis __proto__: tracing.trace_model.TraceModelEvent.prototype, 292da489cd246702bee5938545b18a6f710ed214bcJamie Gennis 302da489cd246702bee5938545b18a6f710ed214bcJamie Gennis get end() { 312da489cd246702bee5938545b18a6f710ed214bcJamie Gennis return this.start + this.duration; 322da489cd246702bee5938545b18a6f710ed214bcJamie Gennis } 332da489cd246702bee5938545b18a6f710ed214bcJamie Gennis }; 342da489cd246702bee5938545b18a6f710ed214bcJamie Gennis 352da489cd246702bee5938545b18a6f710ed214bcJamie Gennis return { 3688448d9ae4dfff1805045790ef5f32495d62abccJeff Brown Slice: Slice 372da489cd246702bee5938545b18a6f710ed214bcJamie Gennis }; 382da489cd246702bee5938545b18a6f710ed214bcJamie Gennis}); 39