<!DOCTYPE html>
<!--
Copyright (c) 2013 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.
-->

<link rel="import" href="/core/tracks/rect_track.html">

<script>
'use strict';

tr.exportTo('tr.c.tracks', function() {
  /**
   * A track that displays an array of Sample objects.
   * @constructor
   * @extends {HeadingTrack}
   */
  var SampleTrack = tr.b.ui.define(
      'sample-track', tr.c.tracks.RectTrack);

  SampleTrack.prototype = {

    __proto__: tr.c.tracks.RectTrack.prototype,

    decorate: function(viewport) {
      tr.c.tracks.RectTrack.prototype.decorate.call(this, viewport);
    },

    get samples() {
      return this.rects;
    },

    set samples(samples) {
      this.rects = samples;
    }
  };

  return {
    SampleTrack: SampleTrack
  };
});
</script>

