1<!DOCTYPE html> 2<!-- 3Copyright (c) 2015 The Chromium Authors. All rights reserved. 4Use of this source code is governed by a BSD-style license that can be 5found in the LICENSE file. 6--> 7 8<link rel="import" href="/tracing/base/base.html"> 9 10<script> 11'use strict'; 12 13tr.exportTo('tr.ui.tracks', function() { 14 15 /** 16 * ContainerToTrackMap is a class to handle building and accessing a map 17 * between an EventContainer's stableId and its handling track. 18 * 19 * @constructor 20 */ 21 function ContainerToTrackMap() { 22 this.stableIdToTrackMap_ = {}; 23 } 24 25 ContainerToTrackMap.prototype = { 26 addContainer: function(container, track) { 27 if (!track) 28 throw new Error('Must provide a track.'); 29 this.stableIdToTrackMap_[container.stableId] = track; 30 }, 31 32 clear: function() { 33 this.stableIdToTrackMap_ = {}; 34 }, 35 36 getTrackByStableId: function(stableId) { 37 return this.stableIdToTrackMap_[stableId]; 38 } 39 }; 40 41 return { 42 ContainerToTrackMap: ContainerToTrackMap 43 }; 44}); 45</script> 46